RPM Packaging: add 3.5.13.2 build patches

pull/3/head
François Andriot 11 years ago
parent 8743b3f65c
commit d8e1ce857b

@ -0,0 +1,22 @@
--- trinity-digikam-3.5.13.2/digikam/libs/dimg/loaders/pngloader.cpp.ORI 2013-03-10 21:44:37.468543760 +0100
+++ trinity-digikam-3.5.13.2/digikam/libs/dimg/loaders/pngloader.cpp 2013-03-10 21:45:23.246560198 +0100
@@ -258,7 +258,7 @@
#ifdef ENABLE_DEBUG_MESSAGES
DDebug() << "PNG in PNG_COLOR_TYPE_GRAY" << endl;
#endif
- png_set_expand_gray_1_2_4_to_8(png_ptr);
+ png_set_gray_1_2_4_to_8(png_ptr);
png_set_gray_to_rgb(png_ptr);
if (TQImage::systemByteOrder() == TQImage::LittleEndian) // Intel
--- trinity-digikam-3.5.13.2/digikam/kioslave/digikamthumbnail.cpp.ORI 2013-03-10 21:50:56.994910746 +0100
+++ trinity-digikam-3.5.13.2/digikam/kioslave/digikamthumbnail.cpp 2013-03-10 21:51:09.150668622 +0100
@@ -465,7 +465,7 @@
{
png_set_gray_to_rgb(png_ptr);
if (png_get_bit_depth(png_ptr, info_ptr) < 8)
- png_set_expand_gray_1_2_4_to_8(png_ptr);
+ png_set_gray_1_2_4_to_8(png_ptr);
}
int sizeOfUint = sizeof(unsigned int);

@ -0,0 +1,11 @@
--- trinity-k9copy-3.5.13.2/src/Makefile.am.ORI 2013-06-17 20:59:49.620929488 +0200
+++ trinity-k9copy-3.5.13.2/src/Makefile.am 2013-06-17 21:00:11.150425671 +0200
@@ -35,7 +35,7 @@
$(top_builddir)/k9author/libk9author.la $(top_builddir)/k9decmpeg/libk9decmpeg.la \
$(top_builddir)/k9devices/libk9devices.la $(top_builddir)/k9vamps/libk9vamps.la \
$(top_builddir)/libdvdnav/libk9dvdnav.la $(top_builddir)/libk9copy/libk9copy.la \
- $(top_builddir)/dvdread/libdvdread.la $(LIB_KDEUI) -lkmdi $(LIBDL)
+ $(top_builddir)/dvdread/libdvdread.la $(LIB_KDEUI) -lkmdi $(LIBDL) -lk3b -lk3bdevice
# this is where the desktop file will go
shelldesktopdir = $(kde_appsdir)/Utilities

@ -0,0 +1,88 @@
--- trinity-koffice-3.5.13.2/filters/kword/wordperfect/import/WordPerfectCollector.hxx.wpd2 2013-04-08 12:28:49.159409461 +0200
+++ trinity-koffice-3.5.13.2/filters/kword/wordperfect/import/WordPerfectCollector.hxx 2013-04-08 12:29:01.170158682 +0200
@@ -81,7 +81,7 @@
class WordPerfectCollector : public WPXDocumentInterface
#else // HAVE_LIBWPD_090
class WordPerfectCollector : public WPXHLListenerImpl
-#endif HAVE_LIBWPD_090
+#endif // HAVE_LIBWPD_090
{
public:
WordPerfectCollector(WPXInputStream *pInput, DocumentHandler *pHandler);
@@ -93,12 +93,12 @@
virtual void startDocument();
virtual void endDocument();
virtual void definePageStyle(const WPXPropertyList &propList) {};
- virtual void openPageSpan(const WPXPropertyList &propList) {};
- virtual void closePageSpan() {};
- virtual void openHeader(const WPXPropertyList &propList) {};
- virtual void closeHeader() {};
- virtual void openFooter(const WPXPropertyList &propList) {};
- virtual void closeFooter() {};
+ virtual void openPageSpan(const WPXPropertyList &propList);
+ virtual void closePageSpan();
+ virtual void openHeader(const WPXPropertyList &propList);
+ virtual void closeHeader();
+ virtual void openFooter(const WPXPropertyList &propList);
+ virtual void closeFooter();
virtual void defineParagraphStyle(const WPXPropertyList &propList, const WPXPropertyListVector &tabStops) {};
virtual void openParagraph(const WPXPropertyList &propList, const WPXPropertyListVector &tabStops);
virtual void closeParagraph();
@@ -106,36 +106,36 @@
virtual void openSpan(const WPXPropertyList &propList);
virtual void closeSpan();
virtual void defineSectionStyle(const WPXPropertyList &propList, const WPXPropertyListVector &columns) {};
- virtual void openSection(const WPXPropertyList &propList, const WPXPropertyListVector &columns) {};
- virtual void closeSection() {};
+ virtual void openSection(const WPXPropertyList &propList, const WPXPropertyListVector &columns);
+ virtual void closeSection();
virtual void insertTab();
virtual void insertSpace() {};
virtual void insertText(const WPXString &text);
virtual void insertLineBreak();
virtual void insertField(const WPXString &type, const WPXPropertyList &propList) {};
- virtual void defineOrderedListLevel(const WPXPropertyList &propList) {};
- virtual void defineUnorderedListLevel(const WPXPropertyList &propList) {};
- virtual void openOrderedListLevel(const WPXPropertyList &propList) {};
- virtual void openUnorderedListLevel(const WPXPropertyList &propList) {};
- virtual void closeOrderedListLevel() {};
- virtual void closeUnorderedListLevel() {};
- virtual void openListElement(const WPXPropertyList &propList, const WPXPropertyListVector &tabStops) {};
- virtual void closeListElement() {};
- virtual void openFootnote(const WPXPropertyList &propList) {};
- virtual void closeFootnote() {};
- virtual void openEndnote(const WPXPropertyList &propList) {};
- virtual void closeEndnote() {};
+ virtual void defineOrderedListLevel(const WPXPropertyList &propList);
+ virtual void defineUnorderedListLevel(const WPXPropertyList &propList);
+ virtual void openOrderedListLevel(const WPXPropertyList &propList);
+ virtual void openUnorderedListLevel(const WPXPropertyList &propList);
+ virtual void closeOrderedListLevel();
+ virtual void closeUnorderedListLevel();
+ virtual void openListElement(const WPXPropertyList &propList, const WPXPropertyListVector &tabStops);
+ virtual void closeListElement();
+ virtual void openFootnote(const WPXPropertyList &propList);
+ virtual void closeFootnote();
+ virtual void openEndnote(const WPXPropertyList &propList);
+ virtual void closeEndnote();
virtual void openComment(const WPXPropertyList &propList) {};
virtual void closeComment() {};
virtual void openTextBox(const WPXPropertyList &propList) {};
virtual void closeTextBox() {};
- virtual void openTable(const WPXPropertyList &propList, const WPXPropertyListVector &columns) {};
- virtual void openTableRow(const WPXPropertyList &propList) {};
- virtual void closeTableRow() {};
- virtual void openTableCell(const WPXPropertyList &propList) {};
- virtual void closeTableCell() {};
- virtual void insertCoveredTableCell(const WPXPropertyList &propList) {};
- virtual void closeTable() {};
+ virtual void openTable(const WPXPropertyList &propList, const WPXPropertyListVector &columns);
+ virtual void openTableRow(const WPXPropertyList &propList);
+ virtual void closeTableRow();
+ virtual void openTableCell(const WPXPropertyList &propList);
+ virtual void closeTableCell();
+ virtual void insertCoveredTableCell(const WPXPropertyList &propList);
+ virtual void closeTable();
virtual void openFrame(const WPXPropertyList &propList) {};
virtual void closeFrame() {};
virtual void insertBinaryObject(const WPXPropertyList &propList, const WPXBinaryData &data) {};

@ -0,0 +1,11 @@
--- trinity-kvirc-3.5.13.2/configure.in.ORI 2013-06-04 00:16:19.407990544 +0200
+++ trinity-kvirc-3.5.13.2/configure.in 2013-06-04 00:16:26.428844196 +0200
@@ -20,7 +20,7 @@
AM_MAINTAINER_MODE
AC_PREFIX_DEFAULT(/usr/local)
-AM_CONFIG_HEADER(src/config.h)
+AC_CONFIG_HEADER(src/config.h)
#------------------------------------------------------------------
# HERE starts your real configure script

@ -0,0 +1,12 @@
--- trinity-arts-3.5.13.2~pre15+85a8c7ad/flow/audioionull.cc.ORI 2013-05-26 13:35:39.081803512 +0200
+++ trinity-arts-3.5.13.2~pre15+85a8c7ad/flow/audioionull.cc 2013-05-26 13:36:02.342333674 +0200
@@ -133,6 +133,9 @@
if((_direction & directionWrite) && getParam(canWrite) >= _fragmentSize)
todo |= AudioSubSystem::ioWrite;
+ fprintf(stderr, "AudioIO: can write %d, fragment size %d, todo %d\n",
+ getParam(canWrite), _fragmentSize, todo);
+
if(!todo)
return;

@ -0,0 +1,20 @@
diff -Nuar trinity-arts-3.5.13.2.ORI/flow/audioioesd.cc trinity-arts-3.5.13.2.P/flow/audioioesd.cc
--- trinity-arts-3.5.13.2.ORI/flow/audioioesd.cc 2013-04-08 19:05:22.665624664 +0200
+++ trinity-arts-3.5.13.2.P/flow/audioioesd.cc 2013-04-08 23:58:07.905872271 +0200
@@ -204,14 +204,10 @@
return write_fd;
case canRead:
- return ESD_BUF_SIZE;
+ return param(fragmentSize);
case canWrite:
- return ESD_BUF_SIZE;
-
- // ESD handles are actually socket descriptors, and I know not
- // of any portable way to peek at the socket's send or receive
- // buffers.
+ return param(fragmentSize);
default:
return param(p);

@ -0,0 +1,41 @@
--- pykdeextensions-3.5.13.1/src/kdedistutils.py.extramodule 2012-09-08 17:33:05.000000000 +0000
+++ pykdeextensions-3.5.13.1/src/kdedistutils.py 2012-10-02 19:19:40.185384207 +0000
@@ -712,6 +712,8 @@
# Build the 'stub' code.
cppcode = self.cpptemplate % {"moduledir": self.data_dir,
+ "extramodule": os.getenv("EXTRA_MODULE_DIR"),
+ "pyqt_dir": self.pyqt_dir,
"modulename": modulename,
"factoryfunction": factoryfunction,
"python_version": python_version}
@@ -854,6 +856,8 @@
#include <sip.h>
#define MODULE_DIR "%(moduledir)s"
+#define EXTRA_MODULE_DIR "%(extramodule)s"
+#define PYQT_DIR "%(pyqt_dir)s"
#define MODULE_NAME "%(modulename)s"
#define FACTORY "%(factoryfunction)s"
#define CPP_FACTORY %(factoryfunction)s
--- pykdeextensions-3.5.13.1/src/kdedistutils.py.ORI 2013-04-07 17:54:28.531813437 +0200
+++ pykdeextensions-3.5.13.1/src/kdedistutils.py 2013-04-07 17:56:15.510529614 +0200
@@ -903,6 +906,18 @@
if(!pyize->appendToSysPath (path.latin1 ())) {
return report_error ("***Failed to set sys.path\n");
}
+
+ // Add the extra path to the python script to the interpreter search path.
+ QString extrapath = QString(EXTRA_MODULE_DIR);
+ if(!pyize->appendToSysPath (extrapath.latin1 ())) {
+ return report_error ("***Failed to set extra sys.path\n");
+ }
+
+ // Add the PYQT path to the python script to the interpreter search path.
+ QString pyqt_dir = QString(PYQT_DIR);
+ if(!pyize->appendToSysPath (pyqt_dir.latin1 ())) {
+ return report_error ("***Failed to set PYQT sys.path\n");
+ }
// Load the Python script.
PyObject *pyModule = pyize->importModule ((char *)script.latin1 ());

@ -0,0 +1,11 @@
--- pykdeextensions/src/kdedistutils.py.ORI 2012-08-27 22:10:18.873738368 +0200
+++ pykdeextensions/src/kdedistutils.py 2012-08-27 22:10:50.234094262 +0200
@@ -539,7 +539,7 @@
canidatepaths.append(os.path.join(kdedir,"include"))
canidatepaths.append(os.path.join(install.prefix,"include"))
canidatepaths.append('/opt/trinity/include')
- canidatepaths.append('/opt/kde/include')
+ canidatepaths.append('/opt/trinity/include/tde')
self.kde_inc_dir = FindFileInPaths('kapplication.h',canidatepaths)
if self.kde_inc_dir is None:
raise SystemExit, "Failed to find the KDE header file directory."

@ -0,0 +1,11 @@
--- trinity-python-trinity-3.5.13.2/configure.py.ORI 2013-01-20 14:28:38.844683333 +0100
+++ trinity-python-trinity-3.5.13.2/configure.py 2013-01-20 14:29:05.179062079 +0100
@@ -410,7 +410,7 @@
if not opt_kdeincdir:
incSearchPaths = [os.path.join (opt_kdebasedir, "include")]
- incSearchPaths.append (os.path.join (opt_kdebasedir, "include", "kde")) # Red Hat
+ incSearchPaths.append (os.path.join (opt_kdebasedir, "include", "tde")) # Red Hat
opt_kdeincdir = search ("kapplication.h", incSearchPaths)
def check_kde_installation():

@ -0,0 +1,44 @@
Index: b/admin/cvs.sh
===================================================================
--- a/admin/cvs.sh 2013-05-22 17:34:41.870203477 +0200
+++ b/admin/cvs.sh 2013-05-22 17:35:08.553206290 +0200
@@ -68,7 +68,7 @@
echo "*** KDE requires automake $required_automake_version"
exit 1
;;
- automake*1.6.* | automake*1.7* | automake*1.8* | automake*1.9* | automake*1.10* | automake*1.11* | automake*1.12*)
+ automake*1.6.* | automake*1.7* | automake*1.8* | automake*1.9* | automake*1.10* | automake*1.11* | automake*1.12* | automake*1.13* )
echo "*** $AUTOMAKE_STRING found."
UNSERMAKE=no
;;
@@ -128,7 +128,7 @@
echo "*** Creating configure"
call_and_fix_autoconf
-if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then
+if egrep "^A[MC]_CONFIG_HEADER" configure.in >/dev/null 2>&1; then
echo "*** Creating config.h template"
$AUTOHEADER || exit 1
touch config.h.in
@@ -184,7 +184,7 @@
fi
fi
$ACLOCAL $ACLOCALFLAGS
-if egrep "^AM_CONFIG_HEADER" configure.in >/dev/null 2>&1; then
+if egrep "^A[MC]_CONFIG_HEADER" configure.in >/dev/null 2>&1; then
echo "*** Creating config.h template"
$AUTOHEADER || exit 1
touch config.h.in
Index: b/admin/configure.in.min
===================================================================
--- a/admin/configure.in.min 2013-05-22 17:34:41.878202494 +0200
+++ b/admin/configure.in.min 2013-05-22 17:34:43.385704000 +0200
@@ -41,7 +41,7 @@
KDE_SET_PREFIX
dnl generate the config header
-AM_CONFIG_HEADER(config.h) dnl at the distribution this done
+AC_CONFIG_HEADER(config.h) dnl at the distribution this done
dnl Checks for programs.
AC_PROG_CC

@ -0,0 +1,578 @@
--- tde-i18n-fr/messages/kdelibs/kdelibs.po.ORI 2013-05-11 13:46:34.210204854 +0200
+++ tde-i18n-fr/messages/kdelibs/kdelibs.po 2013-05-11 13:47:23.882174000 +0200
@@ -5659,8 +5659,36 @@
msgstr "À &propos"
#: kdeui/kaboutkde.cpp:84
-msgid "&Report Bugs or Wishes"
-msgstr "Rapport de bogues et &souhaits"
+msgid "&Report Bugs/Request Enhancements"
+msgstr "Rapport de bogues / &Améliorations"
+
+msgid "&Report Bug/Request Enhancement..."
+msgstr "&Rapport de bogue/Amélioration..."
+
+msgid ""
+"Reporting bugs and requesting enhancements are maintained using the Bugzilla reporting system.\n"
+"You'll need a login account and password to use the reporting system.\n"
+"To control spam and rogue elements the login requires a valid email address.\n"
+"Consider using any large email service if you want to avoid using your private email address.\n"
+"\n"
+"Selecting the button below opens your web browser to http://bugs.trinitydesktop.org,\n"
+"where you will find the report form.\n"
+"The information displayed above will be transferred to the reporting system.\n"
+"Session cookies must be enabled to use the reporting system.\n"
+"\n"
+"Thank you for helping!"
+msgstr ""
+"Les rapports de bogues et demandes d'améliorations sont traités par le système Bugzilla.\n"
+"Vous devez posséder un identifiant et un mot de passe pour utiliser le système de rapport.\n"
+"Pour éviter le spam et les rapports indésirables, vous devez avoir une adresse email valide.\n"
+"Vous pouvez créer une adresse email spécifique si vous ne voulez pas utiliser votre adresse email privée.\n"
+"\n"
+"Cliquez sur le bouton ci-dessous pour ouvrir votre navigateur à l'adresse http://bugs.trinitydesktop.org,\n"
+"où vous trouverez le formulaire de rapport.\n"
+"Les informations affichés ci-dessus seront transférées au système de rapport.\n"
+"Les cookies de session doivent être activés pour utiliser le système de rapport.\n"
+"\n"
+"Merci pour votre aide!"
#: kdeui/kaboutkde.cpp:85
msgid "&Join the Trinity Team"
--- tde-i18n-fr/messages/kdebase/krandr.po.ORI 2013-05-11 13:51:27.100137014 +0200
+++ tde-i18n-fr/messages/kdebase/krandr.po 2013-05-11 13:57:36.051526232 +0200
@@ -331,3 +331,24 @@
#: configdialog.cpp:49
msgid "Global &Shortcuts"
msgstr "Raccourcis Globaux"
+
+msgid "Start KRandRTray automatically when you log in?"
+msgstr "Démarrer KRandRTray automatiquement à l'ouverture de session ?"
+
+msgid "Start Automatically"
+msgstr "Démarrer automatiquement"
+
+msgid "Do Not Start"
+msgstr "Ne pas démarrer"
+
+msgid "Output Port"
+msgstr "Sortie Vidéo"
+
+msgid "Next available output"
+msgstr "Sortie Vidéo suivante"
+
+#, c-format
+msgid "%1 (Active)"
+msgstr "%1 (Active)"
+
+
--- /dev/null 2013-05-11 10:08:04.442569174 +0200
+++ tde-i18n-fr/messages/kdebase/kcmdisplayconfig.po 2013-05-11 14:23:12.893229163 +0200
@@ -0,0 +1,123 @@
+msgid "<b>The global display configuration is a system wide setting, and requires administrator access</b><br>To alter the system's global display configuration, click on the \"Administrator Mode\" button below."
+msgstr "<b>La configuration d'affichage globale est un réglage système, et nécessite les droits administrateur.</b><br>Pour modifier la configuration système globale, cliquer sur le bouton \"Mode superutilisateur\"."
+
+msgid "Color Profiles"
+msgstr "Profils de couleurs"
+
+msgid "<h1>Monitor & Display Configuration</h1> This module allows you to configure monitors attached to your computer via TDE."
+msgstr "<h1>Configuration de l'affichage</h1>Ce module permet de configurer les moniteurs attachés à votre ordinateur via TDE."
+
+msgid "Global Settings"
+msgstr "Paramètres globaux"
+
+msgid "Global"
+msgstr "Général"
+
+msgid "&Enable global display control"
+msgstr "&Activer le contrôle de l'affichage"
+
+msgid "Resolution and Layout"
+msgstr "Résolution et disposition"
+
+msgid "Monitors"
+msgstr "Moniteurs"
+
+msgid "Drag the monitor icons to match the physical arrangement of your monitors."
+msgstr "Déplacez les icônes pour qu'elles correspondent à la disposition de vos moniteurs."
+
+msgid "Display:"
+msgstr "Sortie Vidéo:"
+
+msgid "&Screen resolution"
+msgstr "&Résolution de l'écran:"
+
+msgid "Less"
+msgstr "Moins"
+
+msgid "More"
+msgstr "Plus"
+
+msgid "unset"
+msgstr "Non définie"
+
+msgid "&Refresh rate"
+msgstr "&Taux de rafraichissement"
+
+msgid "Screen Transformations"
+msgstr "Transformation de l'écran"
+
+msgid "&Mirror screen horizontally"
+msgstr "Miroir &horizonal"
+
+msgid "Mirror screen &vertically"
+msgstr "Miroir &vertical"
+
+msgid "&Use this device as the primary monitor."
+msgstr "Utiliser en tant que moniteur &primaire."
+
+msgid "&Extend my Trinity desktop onto this monitor."
+msgstr "&Etendre mon bureau Trinity sur ce moniteur."
+
+msgid "&Rescan Displays"
+msgstr "&Redétecter les écrans"
+
+msgid "Load &Existing Profile"
+msgstr "Charger un profil &existant."
+
+msgid "&Test Settings"
+msgstr "&Tester les réglages"
+
+msgid "&Identify"
+msgstr "&Identifier"
+
+msgid "Brightness and Gamma"
+msgstr "Luminosité et Gamma"
+
+msgid "Visual Calibration Aid"
+msgstr "Aide visuelle à la calibration"
+
+msgid "Target gamma:"
+msgstr "Gamma cible:"
+
+msgid "Hardware Gamma Control"
+msgstr "Contrôle du Gamma matériel"
+
+msgid "All"
+msgstr "Tous"
+
+msgid "Red"
+msgstr "Rouge"
+
+msgid "Green"
+msgstr "Vert"
+
+msgid "Blue"
+msgstr "Bleu"
+
+msgid "Adjust the gamma sliders to make the squares above fade into their backgrounds as much as possible."
+msgstr "Ajustez les niveaux de gamma jusqu'à ce que les carrés disparaissent dans le fond autant que possible."
+
+msgid "Tip: Most computer software expects a gamma of 2.2.\\nAdditionally, any ICC settings for the selected screen will override the gamma controls available on this tab."
+msgstr "Astuce: La plupart des logiciels attendent un gamma de 2.2.<br>De plus, les réglages ICC spécifiques pour l'écran sélectionné, s'ils existent, seront prioritaires sur ceux-ci."
+
+msgid "Power Management"
+msgstr "Gestion de l'Energie"
+
+msgid "Energy Star (DPMS)"
+msgstr "Energy Star (DPMS)"
+
+msgid "&Enable DPMS power save modes"
+msgstr "&Activer les modes d'économie d'énergie DPMS"
+
+msgid "Enable &standby after"
+msgstr "Interrompre l'écran après"
+
+msgid "Enable &suspend after"
+msgstr "Activer la mise en veille après"
+
+msgid "Enable &power down after"
+msgstr "Activer l'arrêt après"
+
+msgid "minutes."
+msgstr "minutes."
+
--- tde-i18n-fr/messages/kdebase/kicker.po.ORI 2013-05-11 20:59:51.416285023 +0200
+++ tde-i18n-fr/messages/kdebase/kicker.po 2013-05-11 21:01:03.139885540 +0200
@@ -889,6 +889,24 @@
msgid "My Documents"
msgstr "Mes Documents"
+msgid "My Images"
+msgstr "Mes Images"
+
+msgid "My Music"
+msgstr "Ma Musique"
+
+msgid "My Videos"
+msgstr "Mes Vidéos"
+
+msgid "My Downloads"
+msgstr "Mes Téléchargements"
+
+msgid "Switch to Kickoff Menu Style"
+msgstr "Utiliser le menu Kickoff"
+
+msgid "Switch to Trinity Classic Menu Style"
+msgstr "Utiliser le menu Classique"
+
msgid "Network Folders"
msgstr "Dossiers Réseau"
--- tde-i18n-fr/messages/kdebase/kcmsmserver.po.ORI 2013-05-11 21:07:13.314644518 +0200
+++ tde-i18n-fr/messages/kdebase/kcmsmserver.po 2013-05-11 21:12:44.468153019 +0200
@@ -63,6 +63,12 @@
"Cochez cette option si vous désirez que le gestionnaire de session affiche une "
"demande de confirmation avant d'arrêter la session."
+msgid "Show fancy &logout fadeaway"
+msgstr "Afficher un fondu gris lors de la déconnexion"
+
+msgid "Show logout stat&us dialog"
+msgstr "Afficher la fenêtre d'état de déconnexion"
+
#. i18n: file smserverconfigdlg.ui line 62
#: rc.cpp:15
#, no-c-format
@@ -177,3 +180,16 @@
"Vous pouvez saisir ici une liste (séparée par des virgules) des applications "
"qui ne doivent pas être enregistrées, et qui ne seront par conséquent pas "
"relancées lorsque la session sera restaurée. Par exemple, « xterm,xconsole »."
+
+msgid "The new window manager will be used when TDE is started the next time."
+msgstr "Le nouveau gestionnaire de fenêtres sera utilisé au prochain démarrage de TDE."
+
+msgid "Window manager change"
+msgstr "Modification du gestionnaire de fenêtres"
+
+msgid "KWin (KDE default)"
+msgstr "TWin (par défaut)"
+
+msgid "Window Manager"
+msgstr "Gestionnaire de fenêtres"
+
--- tde-i18n-fr/messages/kdebase/kcmkdnssd.po.ORI 2013-05-11 21:14:32.762027927 +0200
+++ tde-i18n-fr/messages/kdebase/kcmkdnssd.po 2013-05-11 21:15:59.767319820 +0200
@@ -184,3 +184,7 @@
#~ msgid "Alt+I"
#~ msgstr "Alt+I"
+
+msgid "Enable &Zeroconf network browsing"
+msgstr "Activer le parcours du réseau avec Zeroconf"
+
--- tde-i18n-fr/messages/kdebase/kcmenergy.po.ORI 2013-05-11 21:18:10.672748597 +0200
+++ tde-i18n-fr/messages/kdebase/kcmenergy.po 2013-05-11 21:19:44.590902968 +0200
@@ -102,3 +102,10 @@
"Choisissez la période d'inactivité après laquelle l'affichage doit être éteint. "
"Ceci est le plus haut niveau d'économie d'énergie qui puisse être utilisé "
"lorsque l'écran est physiquement allumé."
+
+msgid "&Enable specific display power management"
+msgstr "&Activer la gestion spécifique de l'énergie"
+
+msgid "Configure KPowersave..."
+msgstr "Configurer KPowersave..."
+
--- tde-i18n-fr/messages/kdebase/kio_media.po.ORI 2013-05-11 21:43:21.810972521 +0200
+++ tde-i18n-fr/messages/kdebase/kio_media.po 2013-05-11 21:43:43.080556048 +0200
@@ -564,3 +564,7 @@
#: propsdlgplugin/propsdlgshareplugin.cpp:67
msgid "&Mounting"
msgstr "&Montage"
+
+msgid "Decrypt"
+msgstr "Décrypter"
+
--- tde-i18n-fr/messages/kdebase/kcmmedia.po.ORI 2013-05-11 21:52:54.856736846 +0200
+++ tde-i18n-fr/messages/kdebase/kcmmedia.po 2013-05-11 21:53:11.780404569 +0200
@@ -216,3 +216,10 @@
#, no-c-format
msgid "Command:"
msgstr "Commande :"
+
+msgid "Mount options"
+msgstr "Options de montage par défaut"
+
+msgid "Here you can specify default mount options for your storage media. Please note that some options are not supported for certain filesystems and/or medium. You will be able to redefine all these options on per-volume basis later, using Properties dialog of the corresponding volume.<br>\nSome of the options are tristate. Leave them \"undefined\" to let KDE choose the best value depending on your media."
+msgstr "Vous pouvez spécifier ici les options de montage par défaut pour les périphériques amovibles. Veuillez noter que certaines options ne sont pas supportées avec certains systèmes de fichiers ou médias. Vous pourrez redéfinir individuellement toutes ces options pour chaque média ultérieurement, en utilisant la boite de dialogue Propriétés sur ce média.<br>\nCertaines options ont 3 états. Laissez-les grisées pour laisser TDE choisir la meilleure valeur pour vous."
+
--- tde-i18n-fr/messages/kdebase/kcmkonq.po.ORI 2013-05-11 22:03:57.845711507 +0200
+++ tde-i18n-fr/messages/kdebase/kcmkonq.po 2013-05-11 22:07:46.429213872 +0200
@@ -64,6 +64,17 @@
"seule fenêtre. Quand cette option n'est pas cochée, tous les transferts "
"apparaissent dans des fenêtres séparées."
+msgid "Show archived &files as folders"
+msgstr "Afficher les fichiers &archives comme des dossiers"
+
+msgid ""
+"Checking this option will list archived"
+" files as folders when using tree view."
+
+msgstr ""
+"Si vous cochez cette option, tous les fichiers archives (ZIP, TAR ...)"
+" seront affichés comme des dossiers dans l'explorateur de fichiers."
+
#: behaviour.cpp:85
msgid "Show file &tips"
msgstr "Af&ficher les info-bulles des fichiers"
--- tde-i18n-fr/messages/kdebase/kcmkicker.po.ORI 2013-05-11 23:14:47.566479096 +0200
+++ tde-i18n-fr/messages/kdebase/kcmkicker.po 2013-05-11 23:29:07.733152080 +0200
@@ -1032,12 +1032,22 @@
"y configurer l'aspect et le comportement des poignées d'applets, la teinture de "
"la transparence et d'autres choses."
+
+msgid "Start menu style:"
+msgstr "Style de menu démarrer:"
+
+msgid "Trinity Classic"
+msgstr "Classique"
+
#. i18n: file menutab.ui line 27
#: rc.cpp:369
#, no-c-format
msgid "K Menu"
msgstr "Menu K"
+msgid "Open menu on mouse hover"
+msgstr "Ouvrir le menu au survol de la souris"
+
#. i18n: file menutab.ui line 49
#: rc.cpp:372
#, no-c-format
@@ -1122,6 +1126,15 @@
msgid "Show side ima&ge"
msgstr "Afficher le &bandeau latéral"
+msgid "Display text in K Menu button"
+msgstr "Afficher du texte sur le bouton K Menu"
+
+msgid "Text:"
+msgstr "Texte:"
+
+msgid "K Menu button icon:"
+msgstr "Icone du bouton K Menu:"
+
#. i18n: file menutab.ui line 126
#: rc.cpp:405
#, no-c-format
@@ -1281,6 +1300,42 @@
"Lorsque cette option est sélectionnée, la zone du menu « sous la main » "
"contiendra les applications les plus utilisées."
+msgid "Show T&ooltip"
+msgstr "Afficher les info-bulles"
+
+msgid "<qt>When this option is selected, a tooltip appears when hovering the mouse pointer over Application Launcher Menu items. Enabling this option also requires that tooltips are enabled in the Panels->Appearance configuration dialog."
+msgstr "<qt>Cette option affiche une info-bulle lorsque la souris survole les applications dans le menu de démarrage. Cette option nécessite que les bulles d'aide soient activées dans la rubrique Tableau de bords->Apparence"
+
+msgid "Recent Documents Menu"
+msgstr "Menus des documents récents"
+
+msgid "K Menu Search"
+msgstr "Menus de recherche"
+
+msgid "Show search field in K Menu"
+msgstr "Afficher le champ de recherche dans le menu K"
+
+msgid "Blur the background when transparency is enabled"
+msgstr "Flouter le fond d'écran lorsque la transparence est activée"
+
+msgid "When checked, the displayed semi-transparent background image will be blurred to reduce eyestrain"
+msgstr "Si vous cochez cette case, le fond d'écran semi-transparent sera flouté pour réduire la fatigue visuelle"
+
+msgid "Show resize handle on panels"
+msgstr "Afficher les poignées de redimensionnement"
+
+msgid "Enabling this option will show a resize handle on the resizable end of each panel."
+msgstr "Activer cette option affichera une poignée de redimensionnement à chaque extremité de chaque panneau."
+
+msgid "Use deep buttons"
+msgstr "Utiliser des textures profonds"
+
+msgid "Enabling this option will yield more highly textured panels."
+msgstr "Activer cette option affichera des panneaux davantage texturés."
+
+msgid "Enable icon activation effects"
+msgstr "Activer les effets d'activation des icones"
+
#. i18n: file positiontab.ui line 17
#: rc.cpp:464
#, no-c-format
--- tde-i18n-fr/messages/kdebase/ksmserver.po.ORI 2013-05-12 22:22:06.947460769 +0200
+++ tde-i18n-fr/messages/kdebase/ksmserver.po 2013-05-12 22:26:35.822041371 +0200
@@ -103,3 +103,39 @@
msgid "Saving your settings..."
msgstr "Enregistrement de vos paramètres ..."
+msgid "Would you like to turn off your computer?"
+msgstr "Souhaitez-vous éteindre votre ordinateur ?"
+
+msgid ""
+"This computer will turn off automatically\n"
+"after %1 seconds."
+msgstr ""
+"Cet ordinateur s'éteindra automatiquement\n"
+"dans %1 secondes."
+
+msgid "Would you like to reboot your computer?"
+msgstr "Souhaitez-vous redémarrer votre ordinateur ?"
+
+msgid "Would you like to reboot to \"%1\"?"
+msgstr "Voulez-vous redémarrer \"%1\" ?"
+
+msgid ""
+"This computer will reboot automatically\n"
+"after %1 seconds."
+msgstr ""
+"Cet ordinateur redémarrera automatiquement\n"
+"après %1 secondes."
+
+msgid "Would you like to end your current session?"
+msgstr "Souhaitez-vous fermer votre session ?"
+
+msgid ""
+"This session will end\n"
+"after %1 seconds automatically."
+msgstr ""
+"Cette session sera fermée automatiquement\n"
+"après %1 secondes."
+
+msgid "Confirm"
+msgstr "Confirmer"
+
--- tde-i18n-fr/messages/kdebase/kcmkonqhtml.po.ORI 2013-05-12 22:40:57.371286882 +0200
+++ tde-i18n-fr/messages/kdebase/kcmkonqhtml.po 2013-05-12 22:45:34.458496871 +0200
@@ -1546,3 +1546,21 @@
#, no-c-format
msgid "Use a&rtsdsp to pipe plugin sound through aRts"
msgstr "Utiliser « a&rtsdsp » pour rediriger le son du module vers aRts"
+
+msgid "Sm&ooth scrolling"
+msgstr "Déflilement fluide"
+
+msgid "Enabled"
+msgstr "Activé"
+
+msgid "Disabled"
+msgstr "Désactivé"
+
+msgid ""
+"Determines whether Konqueror should use smooth steps to scroll HTML pages, or whole steps:<br>"
+"<ul><li><b>Always</b>: Always use smooth steps when scrolling.</li>"
+"<li><b>Never</b>: Never use smooth scrolling, scroll with whole steps instead.</li>"
+msgstr ""
+"Détermine si Konqueror doit utiliser un défilement fluide des pages HTML, ou un défilement par étapes:<br>"
+"<ul><li><b>Toujours</b>: Toujours utiliser le défilement fluide.</li>"
+"<li><b>Jamais</b>: Ne jamais utiliser le défilement fluide, défiler pas par pas.</li>"
--- tde-i18n-fr/messages/kdebase/kcmkwm.po.ORI 2013-05-12 22:53:03.442689656 +0200
+++ tde-i18n-fr/messages/kdebase/kcmkwm.po 2013-05-12 23:06:59.007771110 +0200
@@ -1185,3 +1185,22 @@
msgstr ""
"<qt>La gestion de la transparence est récente et peut causer des problèmes, "
"<br> incluant des plantages (du moteur de transparence ou même de X).</qt>"
+
+msgid "Enable the Trinity window composition manager"
+msgstr "Activer le gestionnaire de composition de fenêtres de Trinity"
+
+msgid "Use shadows (standard effects should be disabled in the Styles module if this is checked)"
+msgstr "Utiliser les ombres (l'effet standard d'ombre doit être désactivé dans le menu Styles)"
+
+msgid "Base shadow size:"
+msgstr "Taille de base de l'ombre:"
+
+msgid "Active window shadow size multiplier:"
+msgstr "Multiplier la taille de l'ombre de la fenêtre active:"
+
+msgid "Dock shadow size multiplier:"
+msgstr "Multiplier la taille de l'ombre du dock:"
+
+msgid "Fade-in menus (requires menu fade effect to be disabled in the Styles module)"
+msgstr "Apparition progressive des menus (nécessite que l'apparition progressive soit désactivée dans le menu Styles)"
+
--- tde-i18n-fr/messages/kdebase/kcmscreensaver.po.ORI 2013-05-14 23:49:35.272995867 +0200
+++ tde-i18n-fr/messages/kdebase/kcmscreensaver.po 2013-05-15 00:00:03.074900231 +0200
@@ -338,3 +338,33 @@
#: scrnsave.cpp:470
msgid "Loading..."
msgstr "Chargement..."
+
+msgid "&Delay saver start after lock"
+msgstr "Retarder l'économiseur d'écran"
+
+msgid "When manually locking the screen, wait to start the screen saver until the configured start delay has elapsed."
+msgstr "Lors du verrouillage manuel de l'écran, attendre le délai indiqué pour démarrer l'économiseur d'écran."
+
+msgid "&Use Secure Attention Key"
+msgstr "Utiliser les touches de sécurité"
+
+msgid "Require Secure Attention Key prior to displaying the unlock dialog."
+msgstr "Exiger l'appui sur CTRL+ALT+SUPPR avant de demander le mot de passe."
+
+msgid "Use &legacy lock windows"
+msgstr "Utiliser l'ancienne fenêtre de verrouillage"
+
+msgid "Use old-style unmanaged X11 lock windows."
+msgstr "Utiliser l'ancienne fenêtre X11 de verrouillage, non gérée par Trinity."
+
+msgid "&Hide active windows from saver"
+msgstr "&Masquer les fenêtres actives"
+
+msgid "Hide all active windows from the screen saver and use the desktop background as the screen saver input."
+msgstr "Masquer toutes les fenêtres actives et afficher le fond d'écran lorsque l'économiseur d'écran est déclenché."
+
+msgid "&Vibrate unlock dialog box on failure"
+msgstr "&Vibrer en cas d'échec de déverrouillage"
+
+msgid "Makes the unlock dialog box vibrate when entering an incorrect password."
+msgstr "Faire vibrer la fenêtre de déverrouillage lorsqu'un mauvais mot de passe est saisi."
--- tde-i18n-fr/messages/kdebase/kdmconfig.po.ORI 2013-05-15 00:01:50.557981168 +0200
+++ tde-i18n-fr/messages/kdebase/kdmconfig.po 2013-05-15 00:03:54.685758336 +0200
@@ -895,3 +895,24 @@
"_: EMAIL OF TRANSLATORS\n"
"Your emails"
msgstr "cousin@kde.org,caulier.gilles@free.fr,kde@macolu.org"
+
+msgid "Secure Attention Key"
+msgstr "Touches de sécurité"
+
+msgid "Enable Secure Attention Key"
+msgstr "Activer les touches de sécurité"
+
+msgid "Secure Attention Key support is not available on your system. Please check for the presence of evdev and uinput."
+msgstr "Le support des touches de sécurité n'est pas disponible sur votre système. Veuillez vérifier la présence de evdev et uinput."
+
+msgid "Here you can enable or disable the Secure Attention Key [SAK] anti-spoofing measure."
+msgstr "Vous pouvez activer ou désactiver les touches de sécurité, mesure anti-usurpation."
+
+msgid "Restart X-Server with session exit"
+msgstr "Redémarrer le serveur X après la fermeture de la session."
+
+msgid "Whether the login manager should restart the local X-Server after a session exit instead of resetting. Use this when the X-Server leaks memory, crashes the system on reset attempts, or otherwise exhibits display issues."
+msgstr "Spécifie si le gestionnaire de connexion doit redémarrer le serveur X local après une fermeture de session au lieu de le réinitialiser. Utilisez cette option si le serveur X a des problèmes de stabilité, d'affichage, ou des fuite mémoire."
+
+msgid "Allow &Root Login"
+msgstr "Autoriser la connexion en tant qu'utilisateur &Root"
--- tde-i18n-fr/messages/kdebase/kcmbackground.po.ORI 2013-05-15 20:43:56.647074858 +0200
+++ tde-i18n-fr/messages/kdebase/kcmbackground.po 2013-05-15 20:46:02.044250812 +0200
@@ -920,3 +920,9 @@
#, no-c-format
msgid "Move &Up"
msgstr "Mon&ter"
+
+msgid "Cross-fading background"
+msgstr "Affichage progressif du fond d'écran"
+
+msgid "Enables a smooth fading effect when changing background image."
+msgstr "Activer un effet de fondu lors du changement de fond d'écran."
--- tde-i18n-fr/messages/kdebase/kminipagerapplet.po.ORI 2013-05-17 21:28:37.998756359 +0200
+++ tde-i18n-fr/messages/kdebase/kminipagerapplet.po 2013-05-17 21:29:50.398145568 +0200
@@ -193,3 +193,6 @@
#, no-c-format
msgid "Show window icons in previews?"
msgstr "Afficher les icônes des fenêtres dans les aperçus ?"
+
+msgid "&Cycle on Wheel"
+msgstr "&Changer de bureau à la molette"

@ -0,0 +1,15 @@
--- trinity-tdebase-3.5.13.2/kdmlib/dmctl.cpp.ORI 2013-02-15 22:22:05.217381830 +0100
+++ trinity-tdebase-3.5.13.2/kdmlib/dmctl.cpp 2013-02-15 22:52:06.635823349 +0100
@@ -180,7 +180,12 @@
if (DMType == GDM)
return exec( "QUERY_LOGOUT_ACTION\n", re ) && re.find("HALT") >= 0;
+#ifdef WITH_CONSOLE_KIT
+ // Use consolekit to check if we can shutdown the computer
+ return exec( "dbus-send --system --print-reply --dest=org.freedesktop.ConsoleKit /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.CanStop\n", re ) && re.find("boolean true") >= 0;
+#else
return exec( "caps\n", re ) && re.find( "\tshutdown" ) >= 0;
+#endif
}
void

@ -0,0 +1,81 @@
--- kdebase/kdesktop/bgmanager.cc.ORI 2012-09-06 17:20:49.564915154 -0400
+++ kdebase/kdesktop/bgmanager.cc 2012-09-06 17:21:01.969682348 -0400
@@ -1013,13 +1013,13 @@
slotChangeDesktop(0);
}
-#ifdef COMPOSITE
void KBackgroundManager::slotCmBackgroundChanged( bool )
{
+#ifdef COMPOSITE
m_tPixmap->fill(TQColor(0, 0x0));
m_Hash = 0;
slotChangeDesktop(0);
-}
#endif
+}
#include "bgmanager.moc"
--- kdebase/kdesktop/main.cc.ORI 2012-09-07 20:33:09.716283507 +0200
+++ kdebase/kdesktop/main.cc 2012-09-07 20:33:31.683842727 +0200
@@ -43,7 +43,7 @@
#include <fcntl.h>
#include <stdlib.h>
-#if defined(Q_WS_X11) && defined(HAVE_XRENDER) && QT_VERSION >= 0x030300
+#if defined(WITH_COMPOSITE) && defined(Q_WS_X11) && defined(HAVE_XRENDER) && QT_VERSION >= 0x030300
#define COMPOSITE
#endif
--- kdebase/kdesktop/bgmanager.h.ORI 2012-09-07 20:36:28.196299160 +0200
+++ kdebase/kdesktop/bgmanager.h 2012-09-07 20:36:52.420812591 +0200
@@ -15,7 +15,7 @@
#include <KBackgroundIface.h>
-#if defined(Q_WS_X11) && defined(HAVE_XRENDER) && QT_VERSION >= 0x030300
+#if defined(WITH_COMPOSITE) && defined(Q_WS_X11) && defined(HAVE_XRENDER) && QT_VERSION >= 0x030300
#define COMPOSITE
#endif
--- kdebase/kdesktop/kdesktopapp.h.ORI 2012-09-07 20:37:14.677365503 +0200
+++ kdebase/kdesktop/kdesktopapp.h 2012-09-07 20:37:25.194154223 +0200
@@ -23,7 +23,7 @@
#include <config.h>
#include <kuniqueapplication.h>
-#if defined(Q_WS_X11) && defined(HAVE_XRENDER) && QT_VERSION >= 0x030300
+#if defined(WITH_COMPOSITE) && defined(Q_WS_X11) && defined(HAVE_XRENDER) && QT_VERSION >= 0x030300
#define COMPOSITE
#endif
--- kdebase/konsole/konsole/main.cpp.ORI 2012-09-07 20:37:37.749901966 +0200
+++ kdebase/konsole/konsole/main.cpp 2012-09-07 20:37:46.683722469 +0200
@@ -46,7 +46,7 @@
#include "konsole.h"
-#if defined(Q_WS_X11) && defined(HAVE_XRENDER) && QT_VERSION >= 0x030300
+#if defined(WITH_COMPOSITE) && defined(Q_WS_X11) && defined(HAVE_XRENDER) && QT_VERSION >= 0x030300
#define COMPOSITE
#endif
--- trinity-tdebase-3.5.13.2/CMakeLists.txt.composite 2013-06-16 21:49:33.742313671 +0200
+++ trinity-tdebase-3.5.13.2/CMakeLists.txt 2013-06-16 21:49:40.485177448 +0200
@@ -82,6 +82,7 @@
option( WITH_I8K "Enable Dell laptop support (ksysguard)" ${WITH_ALL_OPTIONS} )
option( WITH_HAL "Enable HAL support" ${WITH_ALL_OPTIONS} )
option( WITH_KDESKTOP_LOCK_BACKTRACE "Enable backtrace in kdesktop_lock exception handler" ${WITH_ALL_OPTIONS} )
+option( WITH_COMPOSITE "Enable COMPOSITE support" OFF )
##### user requested modules ####################
--- trinity-tdebase-3.5.13.2/config.h.cmake.composite 2013-06-16 21:50:04.626689570 +0200
+++ trinity-tdebase-3.5.13.2/config.h.cmake 2013-06-16 21:50:13.094518380 +0200
@@ -188,3 +188,6 @@
// Kickoff menu
#cmakedefine KICKOFF_DIST_CONFIG_SHORTCUT1 "@KICKOFF_DIST_CONFIG_SHORTCUT1@"
#cmakedefine KICKOFF_DIST_CONFIG_SHORTCUT2 "@KICKOFF_DIST_CONFIG_SHORTCUT2@"
+
+// kdesktop, konsole
+#cmakedefine WITH_COMPOSITE "@WITH_COMPOSITE@"

@ -0,0 +1,139 @@
--- kdebase/kdm/backend/CMakeLists.txt.ORI 2012-09-06 22:11:08.422091268 +0200
+++ kdebase/kdm/backend/CMakeLists.txt 2012-09-06 22:11:21.280843938 +0200
@@ -14,11 +14,11 @@
include_directories(
${CMAKE_CURRENT_BINARY_DIR}
${CMAKE_BINARY_DIR}
- ${DBUS_TQT_INCLUDE_DIRS}
+ ${DBUS_INCLUDE_DIRS}
)
link_directories(
- ${DBUS_TQT_LIBRARY_DIRS}
+ ${DBUS_LIBRARY_DIRS}
)
##### kdm (executable) ##########################
@@ -43,6 +43,6 @@
process.c protodpy.c reset.c resource.c rpcauth.c
server.c session.c sessreg.c socket.c streams.c
util.c xdmauth.c xdmcp.c
- LINK X11 ${XAU_LIBRARIES} ${DBUS_TQT_LIBRARIES} ${CRYPT_LIBRARY} ${PAM_LIBRARY} ${XDMCP_LIBRARIES}
+ LINK X11 ${XAU_LIBRARIES} ${DBUS_LIBRARIES} ${CRYPT_LIBRARY} ${PAM_LIBRARY} ${XDMCP_LIBRARIES}
DESTINATION ${BIN_INSTALL_DIR}
)
--- kdebase/ksmserver/CMakeLists.txt.ORI 2012-09-06 17:22:59.990317001 -0400
+++ kdebase/ksmserver/CMakeLists.txt 2012-09-06 17:23:16.340989494 -0400
@@ -19,13 +19,13 @@
${CMAKE_SOURCE_DIR}/kdmlib
${TDE_INCLUDE_DIR}
${TQT_INCLUDE_DIRS}
- ${DBUS_TQT_INCLUDE_DIRS}
+ ${DBUS_INCLUDE_DIRS}
${HAL_INCLUDE_DIRS}
)
link_directories(
${TQT_LIBRARY_DIRS}
- ${DBUS_TQT_LIBRARY_DIRS}
+ ${DBUS_LIBRARY_DIRS}
)
@@ -43,5 +43,5 @@
main.cpp server.cpp shutdowndlg.cpp startupdlg.cpp
legacy.cpp startup.cpp shutdown.cpp client.cpp
KSMServerInterface.skel server.skel timed.ui
- LINK dmctl-static kdeui-shared krsync-shared ${HAL_LIBRARIES} ${DBUS_TQT_LIBRARIES}
+ LINK dmctl-static kdeui-shared krsync-shared ${HAL_LIBRARIES} ${DBUS_LIBRARIES}
)
--- kdebase/kioslave/media/mediamanager/CMakeLists.txt.ORI 2012-09-07 23:57:56.858227336 +0200
+++ kdebase/kioslave/media/mediamanager/CMakeLists.txt 2012-09-07 23:58:54.948097583 +0200
@@ -20,12 +20,12 @@
${TDE_INCLUDE_DIR}
${TQT_INCLUDE_DIRS}
${HAL_INCLUDE_DIRS}
- ${DBUS_TQT_INCLUDE_DIRS}
+ ${DBUS_INCLUDE_DIRS}
)
link_directories(
${TQT_LIBRARY_DIRS}
- ${DBUS_TQT_LIBRARY_DIRS}
+ ${DBUS_LIBRARY_DIRS}
)
@@ -48,7 +48,7 @@
tde_add_kpart( ${target} AUTOMOC
SOURCES ${${target}_SRCS}
- LINK mediacommon-static kdeinit_kded-shared ${HAL_LIBRARIES} -lhal-storage ${DBUS_TQT_LIBRARIES}
+ LINK mediacommon-static kdeinit_kded-shared ${HAL_LIBRARIES} -lhal-storage ${DBUS_LIBRARIES} -ldbus-qt-1
DESTINATION ${PLUGIN_INSTALL_DIR}
)
else( )
--- trinity-tdebase-3.5.13.2/ConfigureChecks.cmake.ORI 2013-01-23 23:11:55.903373346 +0100
+++ trinity-tdebase-3.5.13.2/ConfigureChecks.cmake 2013-01-23 23:12:23.168860363 +0100
@@ -256,21 +256,3 @@
endif( )
-# dbus-tqt (kdm, ksmserver, kioslaves(media))
-if( BUILD_KDM OR BUILD_KSMSERVER OR (BUILD_KIOSLAVES AND WITH_HAL) )
- # check for dbus-tqt
- pkg_check_modules( DBUS_TQT REQUIRED dbus-tqt )
- tde_save( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES )
- set( CMAKE_REQUIRED_INCLUDES ${DBUS_TQT_INCLUDE_DIRS} ${TQT_INCLUDE_DIRS} ${QT_INCLUDE_DIRS})
- set( CMAKE_REQUIRED_LIBRARIES ${DBUS_TQT_LDFLAGS} ${TQT_LDFLAGS} ${QT_LDFLAGS} )
- check_cxx_source_compiles("
- #include <tqt.h>
- #include <dbus/connection.h>
- int main(int, char**) { return 0; } "
- HAVE_DBUS_QT3_07 )
- tde_restore( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES )
- if( NOT HAVE_DBUS_QT3_07 )
- tde_message_fatal( "dbus-tqt is required, but was not found on your system" )
- endif( )
-
-endif( )
--- trinity-tdebase-3.5.13.2/kicker/kicker/ui/CMakeLists.txt.ORI 2013-06-16 22:01:14.879046232 +0200
+++ trinity-tdebase-3.5.13.2/kicker/kicker/ui/CMakeLists.txt 2013-06-16 22:01:32.316688895 +0200
@@ -20,7 +20,7 @@
${CMAKE_SOURCE_DIR}/kicker/kicker/buttons
${CMAKE_SOURCE_DIR}/kdmlib
${CMAKE_SOURCE_DIR}/libkonq
- ${DBUS_TQT_INCLUDE_DIRS}
+ ${DBUS_INCLUDE_DIRS}
${TDE_INCLUDE_DIR}
${TQT_INCLUDE_DIRS}
)
@@ -56,5 +56,5 @@
tde_add_library( ${target} STATIC_PIC AUTOMOC
SOURCES ${${target}_SRCS}
DEPENDENCIES kicker_core-static kickermain-static
- LINK dmctl-static kickoffsearch_interfaces-shared ${DBUS_TQT_LIBRARIES} ${HAL_LIBRARIES}
+ LINK dmctl-static kickoffsearch_interfaces-shared ${DBUS_LIBRARIES} ${HAL_LIBRARIES}
)
--- trinity-tdebase-3.5.13.2/kicker/kicker/core/CMakeLists.txt.ORI 2013-06-16 22:05:07.891261997 +0200
+++ trinity-tdebase-3.5.13.2/kicker/kicker/core/CMakeLists.txt 2013-06-16 22:05:17.673060725 +0200
@@ -17,7 +17,7 @@
${CMAKE_SOURCE_DIR}/kicker/libkicker
${CMAKE_SOURCE_DIR}/kicker/kicker/ui
${CMAKE_SOURCE_DIR}/kicker/kicker/buttons
- ${DBUS_TQT_INCLUDE_DIRS}
+ ${DBUS_INCLUDE_DIRS}
${TDE_INCLUDE_DIR}
${TQT_INCLUDE_DIRS}
)
--- trinity-tdebase-3.5.13.2/kicker/kicker/buttons/CMakeLists.txt.ORI 2013-06-16 22:09:44.143564983 +0200
+++ trinity-tdebase-3.5.13.2/kicker/kicker/buttons/CMakeLists.txt 2013-06-16 22:09:48.450475959 +0200
@@ -17,7 +17,7 @@
${CMAKE_SOURCE_DIR}/kicker/kicker/core
${CMAKE_SOURCE_DIR}/kicker/kicker/ui
${CMAKE_SOURCE_DIR}/libkonq
- ${DBUS_TQT_INCLUDE_DIRS}
+ ${DBUS_INCLUDE_DIRS}
${TDE_INCLUDE_DIR}
${TQT_INCLUDE_DIRS}
)

@ -0,0 +1,39 @@
--- trinity-tdebase-3.5.13.2/config.h.cmake.ORI 2013-02-11 13:57:40.955386048 +0100
+++ trinity-tdebase-3.5.13.2/config.h.cmake 2013-02-11 14:02:42.484413874 +0100
@@ -159,6 +159,9 @@
#cmakedefine XDMCP 1
+#define TDM_DEFMINUID "@TDM_DEFMINUID@"
+#define TDM_DEFMAXUID "@TDM_DEFMAXUID@"
+
// ksmserver
#cmakedefine DBUS_SYSTEM_BUS "@DBUS_SYSTEM_BUS@"
--- trinity-tdebase-3.5.13.2/kdm/kfrontend/genkdmconf.c.ORI 2013-02-11 14:03:11.290843286 +0100
+++ trinity-tdebase-3.5.13.2/kdm/kfrontend/genkdmconf.c 2013-02-11 14:05:21.309267838 +0100
@@ -2761,6 +2761,10 @@
}
}
}
+#ifdef TDM_MINDEFUID
+ defminuid = TDM_MINDEFUID;
+ defmaxuid = TDM_MAXDEFUID;
+#else // TDM_MINDEFUID
#ifdef __linux__
if (!stat( "/etc/debian_version", &st )) { /* debian */
defminuid = "1000";
@@ -2778,10 +2782,11 @@
defminuid = "500";
defmaxuid = "65000";
}
-#else
+#else // __linux__
defminuid = "1000";
defmaxuid = "65000";
-#endif
+#endif // __linux__
+#endif // TDM_MINDEFUID
for (i = 0; i < CONF_MAX_PRIO; i++)
for (cs = config; cs; cs = cs->next)
for (ce = cs->ents; ce; ce = ce->next)

@ -0,0 +1,27 @@
--- ./libkonq/konqbookmarkmanager.h.ori 2013-05-08 23:26:03.558587419 +0200
+++ ./libkonq/konqbookmarkmanager.h 2013-05-08 23:29:25.317517880 +0200
@@ -3,6 +3,8 @@
#include <kbookmarkmanager.h>
#include <kstandarddirs.h>
+#include <kurl.h>
+#include <kio/job.h>
#include <libkonq_export.h>
class LIBKONQ_EXPORT KonqBookmarkManager
@@ -11,7 +13,14 @@
static KBookmarkManager * self() {
if ( !s_bookmarkManager )
{
- TQString bookmarksFile = locateLocal("data", TQString::fromLatin1("konqueror/bookmarks.xml"));
+ TQString globalBookmarkFile = locate( "data", TQString::fromLatin1( "konqueror/bookmarks.xml" ) );
+ TQString bookmarksFile = locateLocal( "data", TQString::fromLatin1("konqueror/bookmarks.xml" ), true);
+ if ( globalBookmarkFile != TQString::null && bookmarksFile == TQString::null ) {
+ KIO::file_copy(
+ KURL::fromPathOrURL( globalBookmarkFile ),
+ KURL::fromPathOrURL( bookmarksFile ), -1, false, false
+ );
+ }
s_bookmarkManager = KBookmarkManager::managerForFile( bookmarksFile );
}
return s_bookmarkManager;

@ -0,0 +1,37 @@
--- trinity-tdebase-3.5.13.2~pre100+073a32f9/kcontrol/displayconfig/displayconfig.desktop.ORI 2013-05-11 14:53:30.914170537 +0200
+++ trinity-tdebase-3.5.13.2~pre100+073a32f9/kcontrol/displayconfig/displayconfig.desktop 2013-05-11 14:53:59.495582944 +0200
@@ -2,6 +2,7 @@
Categories=Qt;KDE;X-KDE-settings-system;
Comment=Configure display
Comment[en_US]=Configure display
+Comment[fr]=Configuration de l'affichage
DocPath=kcontrol/displayconfig.html
Exec=kcmshell displayconfig
GenericName=
@@ -11,6 +12,7 @@
MimeType=
Name=Monitor & Display
Name[en_US]=Monitor & Display
+Name[fr]=Moniteurs & Affichage
NoDisplay=false
Path=
StartupNotify=true
--- trinity-tdebase-3.5.13.2~pre100+073a32f9/kcontrol/iccconfig/iccconfig.desktop.ORI 2013-05-11 21:21:04.241337141 +0200
+++ trinity-tdebase-3.5.13.2~pre100+073a32f9/kcontrol/iccconfig/iccconfig.desktop 2013-05-11 21:21:44.782537929 +0200
@@ -12,6 +12,7 @@
Categories=Qt;KDE;X-KDE-settings-hardware;
Comment=Configure display ICC profile
Comment[en_US]=Configure display ICC profile
+Comment[fr]=Configurer les profils de couleurs ICC
DocPath=kcontrol/iccconfig.html
GenericName=
GenericName[en_US]=
@@ -19,5 +20,6 @@
MimeType=
Name=ICC Color Profile
Name[en_US]=ICC Color Profile
+Name[fr]=Profils de couleurs ICC
-NoDisplay=false
\ Pas de fin de ligne à la fin du fichier
+NoDisplay=false

@ -0,0 +1,10 @@
diff -Naur kdebase-3.5.10/kioslave/media/services/media_safelyremove.desktop kdebase-3.5.10.yeni/kioslave/media/services/media_safelyremove.desktop
--- kdebase-3.5.10/kioslave/media/services/media_safelyremove.desktop 2008-08-19 21:16:59.000000000 +0300
+++ kdebase-3.5.10.yeni/kioslave/media/services/media_safelyremove.desktop 2009-12-22 00:51:57.122282682 +0200
@@ -71,5 +71,5 @@
Name[wa]=Ositer e såvrité
Name[zh_CN]=安全删除
Name[zh_TW]=安全的移除
-Exec=kio_media_mounthelper -s %u
+Exec=kio_media_mounthelper -u %u

@ -0,0 +1,701 @@
--- ./kcontrol/background/bgadvanced.cpp.ORI 2013-05-09 14:42:39.036269356 +0200
+++ ./kcontrol/background/bgadvanced.cpp 2013-05-09 14:43:12.485581123 +0200
@@ -44,6 +44,7 @@
#include "bgadvanced.h"
#include "bgadvanced_ui.h"
+#include "KCrossBGRender.h"
#include <X11/Xlib.h>
/**** BGAdvancedDialog ****/
@@ -63,7 +64,7 @@
}
-BGAdvancedDialog::BGAdvancedDialog(KBackgroundRenderer *_r,
+BGAdvancedDialog::BGAdvancedDialog(KCrossBGRender *_r,
TQWidget *parent,
bool m_multidesktop)
: KDialogBase(parent, "BGAdvancedDialog",
--- ./kcontrol/background/bgdialog.cpp.ORI 2013-05-09 14:46:43.556237673 +0200
+++ ./kcontrol/background/bgdialog.cpp 2013-05-09 14:47:33.054218951 +0200
@@ -63,6 +63,7 @@
#include "bgwallpaper.h"
#include "bgadvanced.h"
#include "bgdialog.h"
+#include "KCrossBGRender.h"
#define NR_PREDEF_PATTERNS 6
@@ -194,19 +195,19 @@
int eDesk = i>0 ? i-1 : 0;
// Setup the merged-screen renderer
- KBackgroundRenderer * r = new KBackgroundRenderer(eDesk, 0, false, _config);
+ KCrossBGRender * r = new KCrossBGRender(eDesk, 0, false, _config);
m_renderer[i].insert( 0, r );
connect( r, TQT_SIGNAL(imageDone(int,int)), TQT_SLOT(slotPreviewDone(int,int)) );
// Setup the common-screen renderer
- r = new KBackgroundRenderer(eDesk, 0, true, _config);
+ r = new KCrossBGRender(eDesk, 0, true, _config);
m_renderer[i].insert( 1, r );
connect( r, TQT_SIGNAL(imageDone(int,int)), TQT_SLOT(slotPreviewDone(int,int)) );
// Setup the remaining renderers for each screen
for (unsigned j=0; j < m_numScreens; ++j )
{
- r = new KBackgroundRenderer(eDesk, j, true, _config);
+ r = new KCrossBGRender(eDesk, j, true, _config);
m_renderer[i].insert( j+2, r );
connect( r, TQT_SIGNAL(imageDone(int,int)), TQT_SLOT(slotPreviewDone(int,int)) );
}
@@ -221,14 +222,14 @@
}
// set up the common desktop renderer
- KBackgroundRenderer * r = new KBackgroundRenderer(0, 0, false, _config);
+ KCrossBGRender * r = new KCrossBGRender(0, 0, false, _config);
m_renderer[0].insert(0, r);
connect(r, TQT_SIGNAL(imageDone(int,int)), TQT_SLOT(slotPreviewDone(int,int)));
// set up all the other desktop renderers
for (unsigned i = 0; i < m_numDesks; ++i)
{
- r = new KBackgroundRenderer(i, 0, false, _config);
+ r = new KCrossBGRender(i, 0, false, _config);
m_renderer[i+1].insert(0, r);
connect(r, TQT_SIGNAL(imageDone(int,int)), TQT_SLOT(slotPreviewDone(int,int)));
}
@@ -266,7 +267,7 @@
delete m_pGlobals;
}
-KBackgroundRenderer * BGDialog::eRenderer()
+KCrossBGRender * BGDialog::eRenderer()
{
return m_renderer[m_eDesk][m_eScreen];
}
@@ -681,7 +682,7 @@
void BGDialog::updateUI()
{
- KBackgroundRenderer *r = eRenderer();
+ KCrossBGRender *r = eRenderer();
m_comboDesktop->setCurrentItem(m_eDesk);
m_comboScreen->setCurrentItem(m_eScreen);
@@ -819,7 +820,7 @@
if (!m_previewUpdates)
return;
- KBackgroundRenderer * r = m_renderer[m_eDesk][(m_eScreen>1) ? (screen_done+2) : m_eScreen];
+ KCrossBGRender * r = m_renderer[m_eDesk][(m_eScreen>1) ? (screen_done+2) : m_eScreen];
if (r->image().isNull())
return;
@@ -858,7 +859,7 @@
void BGDialog::slotWallpaperTypeChanged(int i)
{
- KBackgroundRenderer *r = eRenderer();
+ KCrossBGRender *r = eRenderer();
r->stop();
// No picture
@@ -984,7 +985,7 @@
void BGDialog::slotWallpaperPos(int mode)
{
- KBackgroundRenderer *r = eRenderer();
+ KCrossBGRender *r = eRenderer();
mode++;
m_wallpaperPos = mode;
@@ -1002,7 +1003,7 @@
void BGDialog::slotSetupMulti()
{
- KBackgroundRenderer *r = eRenderer();
+ KCrossBGRender *r = eRenderer();
BGMultiWallpaperDialog dlg(r, topLevelWidget());
if (dlg.exec() == TQDialog::Accepted) {
@@ -1018,7 +1019,7 @@
void BGDialog::slotPrimaryColor(const TQColor &color)
{
- KBackgroundRenderer *r = eRenderer();
+ KCrossBGRender *r = eRenderer();
if (color == r->colorA())
return;
@@ -1033,7 +1034,7 @@
void BGDialog::slotSecondaryColor(const TQColor &color)
{
- KBackgroundRenderer *r = eRenderer();
+ KCrossBGRender *r = eRenderer();
if (color == r->colorB())
return;
@@ -1048,7 +1049,7 @@
void BGDialog::slotPattern(int pattern)
{
- KBackgroundRenderer *r = eRenderer();
+ KCrossBGRender *r = eRenderer();
r->stop();
bool bSecondaryEnabled = true;
if (pattern < NR_PREDEF_PATTERNS)
@@ -1085,7 +1086,7 @@
// Copy stuff
for (unsigned desk = 0; desk < m_numDesks+1; ++desk )
{
- KBackgroundRenderer *master = m_renderer[desk][1];
+ KCrossBGRender *master = m_renderer[desk][1];
for (unsigned screen = 0; screen < m_numScreens; ++screen)
{
m_renderer[desk][screen+2]->copyConfig(master);
@@ -1140,7 +1141,7 @@
// Copy stuff
for (unsigned screen = 0; screen < m_renderer[0].size(); ++screen )
{
- KBackgroundRenderer *master = m_renderer[0][screen];
+ KCrossBGRender *master = m_renderer[0][screen];
for (unsigned desk = 0; desk < m_numDesks; ++desk )
{
m_renderer[desk+1][screen]->copyConfig(master);
@@ -1179,7 +1180,7 @@
void BGDialog::slotAdvanced()
{
- KBackgroundRenderer *r = eRenderer();
+ KCrossBGRender *r = eRenderer();
m_previewUpdates = false;
BGAdvancedDialog dlg(r, topLevelWidget(), m_multidesktop);
@@ -1301,7 +1302,7 @@
{
for (unsigned j = 0; j < m_renderer[i].size(); ++j )
{
- KBackgroundRenderer * r = m_renderer[i][j];
+ KCrossBGRender * r = m_renderer[i][j];
if( r->isActive())
r->stop();
r->desktopResized();
--- ./kcontrol/background/bgadvanced.h.ori 2013-05-09 14:49:18.551047531 +0200
+++ ./kcontrol/background/bgadvanced.h 2013-05-09 14:49:23.509945456 +0200
@@ -33,14 +33,14 @@
class TQSpinBox;
class BGAdvancedBase;
-class KBackgroundRenderer;
+class KCrossBGRender;
class KBackgroundProgram;
class BGAdvancedDialog : public KDialogBase
{
Q_OBJECT
public:
- BGAdvancedDialog(KBackgroundRenderer *_r, TQWidget *parent, bool m_multidesktop);
+ BGAdvancedDialog(KCrossBGRender *_r, TQWidget *parent, bool m_multidesktop);
void setCacheSize(int s);
int cacheSize();
@@ -79,7 +79,7 @@
void slotEnableProgram(bool b);
private:
- KBackgroundRenderer *r;
+ KCrossBGRender *r;
BGAdvancedBase *dlg;
--- ./kcontrol/background/bgdialog.h.ORI 2013-05-09 14:49:59.223210319 +0200
+++ ./kcontrol/background/bgdialog.h 2013-05-09 14:50:40.215366483 +0200
@@ -28,6 +28,7 @@
#include "bgrender.h"
#include "bgsettings.h"
#include "bgdefaults.h"
+#include "KCrossBGRender.h"
class BGMonitorArrangement;
class KStandardDirs;
@@ -53,7 +54,7 @@
protected:
void initUI();
void updateUI();
- KBackgroundRenderer * eRenderer();
+ KCrossBGRender * eRenderer();
void setWallpaper(const TQString &);
@@ -95,7 +96,7 @@
int m_screen;
int m_eDesk;
int m_eScreen;
- TQValueVector< TQPtrVector<KBackgroundRenderer> > m_renderer; // m_renderer[desk][screen]
+ TQValueVector< TQPtrVector<KCrossBGRender> > m_renderer; // m_renderer[desk][screen]
TQMap<TQString,int> m_wallpaper;
TQStringList m_patterns;
int m_slideShowRandom; // Remembers last Slide Show setting
--- ./kcontrol/background/bgwallpaper.h.ORI 2013-05-09 14:51:55.150823830 +0200
+++ ./kcontrol/background/bgwallpaper.h 2013-05-09 14:52:37.513949453 +0200
@@ -27,6 +27,7 @@
#include <tqstringlist.h>
#include <kdialogbase.h>
+#include <kdebug.h>
class BGMultiWallpaperBase;
class KBackgroundSettings;
@@ -55,12 +56,16 @@
void slotMoveDown();
void slotOk();
void slotItemSelected( TQListBoxItem * );
+ void slotCheckScheduled(bool);
+ void slotChangedXML(const TQString&);
+
private:
void setEnabledMoveButtons();
KBackgroundSettings *m_pSettings;
BGMultiWallpaperBase *dlg;
+ TQString lastXml;
};
#endif
--- ./kcontrol/background/bgwallpaper.cpp.ORI 2013-05-09 14:53:01.461452198 +0200
+++ ./kcontrol/background/bgwallpaper.cpp 2013-05-09 14:57:27.712924157 +0200
@@ -26,12 +26,14 @@
#include <tqevent.h>
#include <tqpushbutton.h>
#include <tqspinbox.h>
+#include <tqgroupbox.h>
#include <kfiledialog.h>
#include <kimageio.h>
#include <klocale.h>
#include <kstandarddirs.h>
#include <kurldrag.h>
+#include <kurlrequester.h>
#include "bgsettings.h"
#include "bgwallpaper.h"
@@ -119,10 +121,41 @@
connect(dlg->m_buttonMoveUp, TQT_SIGNAL(clicked()), TQT_SLOT(slotMoveUp()));
connect(dlg->m_buttonMoveDown, TQT_SIGNAL(clicked()), TQT_SLOT(slotMoveDown()));
connect(dlg->m_listImages, TQT_SIGNAL(clicked ( TQListBoxItem * )), TQT_SLOT(slotItemSelected( TQListBoxItem *)));
+ connect(dlg->chkScheduled, TQT_SIGNAL(toggled(bool)), TQT_SLOT(slotCheckScheduled(bool)));
+ connect(dlg->kurlXmlFile, TQT_SIGNAL(textChanged(const TQString&)), TQT_SLOT(slotChangedXML(const TQString &)));
+
dlg->m_buttonRemove->setEnabled( false );
dlg->m_buttonMoveUp->setEnabled( false );
dlg->m_buttonMoveDown->setEnabled( false );
+ // XML Stuffs
+ dlg->kurlXmlFile->setFilter("*.xml");
+ if (m_pSettings->wallpaperList()[0].endsWith("xml",false)) {
+ dlg->kurlXmlFile->setURL(m_pSettings->wallpaperList()[0]);
+ dlg->chkScheduled->setChecked(true);
+ dlg->m_listImages->removeItem(0);
+ lastXml = m_pSettings->wallpaperList()[0];
+ } else {
+ dlg->kurlXmlFile->setURL("/usr/share/mdk/backgrounds/Mandriva.xml");
+ dlg->chkScheduled->setChecked(false);
+ slotCheckScheduled(false);
+ }
+}
+
+void BGMultiWallpaperDialog::slotCheckScheduled(bool state)
+{
+ if ( state == true ) {
+ dlg->grpNormalShow->setEnabled(false);
+ dlg->kurlXmlFile->setEnabled(true);
+ } else {
+ dlg->grpNormalShow->setEnabled(true);
+ dlg->kurlXmlFile->setEnabled(false);
+ }
+}
+
+void BGMultiWallpaperDialog::slotChangedXML(const TQString & file)
+{
+ lastXml = file;
}
void BGMultiWallpaperDialog::slotItemSelected( TQListBoxItem * )
@@ -222,15 +255,38 @@
void BGMultiWallpaperDialog::slotOk()
{
+ bool useXml = false;
+ // Looking to XML
+ if (dlg->chkScheduled->isChecked() && lastXml.endsWith("xml",false)) {
+ useXml = true;
+ kdDebug() << "Adding XML" << lastXml;
+ dlg->m_listImages->insertItem(lastXml,0);
+ }
+
+ kdDebug() << dlg->m_listImages << endl;
+
TQStringList lst;
- for (unsigned i=0; i < dlg->m_listImages->count(); i++)
+ for (unsigned i=0; i < dlg->m_listImages->count(); i++) {
- lst.append(dlg->m_listImages->text(i));
+ lst.append(dlg->m_listImages->text(i));
+ }
m_pSettings->setWallpaperList(lst);
m_pSettings->setWallpaperChangeInterval(dlg->m_spinInterval->value());
- if (dlg->m_cbRandom->isChecked())
+ if (dlg->m_cbRandom->isChecked()) {
m_pSettings->setMultiWallpaperMode(KBackgroundSettings::Random);
- else
+ } else {
m_pSettings->setMultiWallpaperMode(KBackgroundSettings::InOrder);
+ }
+
+ if(useXml) {
+ m_pSettings->changeWallpaper();
+ m_pSettings->setWallpaper(lastXml);
+ m_pSettings->changeWallpaper();
+ } else {
+ m_pSettings->changeWallpaper();
+ m_pSettings->setWallpaper(lst[0]);
+ m_pSettings->changeWallpaper();
+ }
+
accept();
}
--- kdebase-3.5.9/kcontrol/background/bgwallpaper_ui.ui.kbg_trans 2008-03-17 11:06:49.000000000 -0300
+++ kdebase-3.5.9/kcontrol/background/bgwallpaper_ui.ui 2008-03-17 11:07:13.000000000 -0300
@@ -1,4 +1,4 @@
-<!DOCTYPE UI><UI version="3.1" stdsetdef="1">
+<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
<class>BGMultiWallpaperBase</class>
<widget class="TQWidget">
<property name="name">
@@ -8,155 +8,209 @@
<rect>
<x>0</x>
<y>0</y>
- <width>410</width>
- <height>196</height>
+ <width>499</width>
+ <height>526</height>
</rect>
</property>
- <grid>
+ <property name="caption">
+ <string>BGMultiWallPaperBase</string>
+ </property>
+ <vbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
<property name="margin">
<number>0</number>
</property>
- <widget class="TQLabel" row="2" column="0">
- <property name="name">
- <cstring>textLabel2</cstring>
- </property>
- <property name="text">
- <string>Show the following pictures:</string>
- </property>
- </widget>
- <widget class="TQCheckBox" row="1" column="0">
- <property name="name">
- <cstring>m_cbRandom</cstring>
- </property>
- <property name="text">
- <string>&amp;Show pictures in random order</string>
- </property>
- </widget>
- <widget class="TQLayoutWidget" row="0" column="0">
+ <widget class="TQLayoutWidget">
<property name="name">
- <cstring>layout3</cstring>
+ <cstring>layout8</cstring>
</property>
<hbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
- <widget class="TQLabel">
+ <widget class="TQCheckBox">
<property name="name">
- <cstring>textLabel1</cstring>
+ <cstring>chkScheduled</cstring>
</property>
<property name="text">
- <string>Change &amp;picture after:</string>
- </property>
- <property name="buddy" stdset="0">
- <cstring>m_spinInterval</cstring>
+ <string>Scheduled Slide Show</string>
</property>
</widget>
- <widget class="TQSpinBox">
+ <widget class="KURLRequester">
<property name="name">
- <cstring>m_spinInterval</cstring>
+ <cstring>kurlXmlFile</cstring>
</property>
</widget>
- <spacer>
- <property name="name">
- <cstring>spacer4</cstring>
- </property>
- <property name="orientation">
- <enum>Horizontal</enum>
- </property>
- <property name="sizeType">
- <enum>Expanding</enum>
- </property>
- <property name="sizeHint">
- <size>
- <width>20</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
</hbox>
</widget>
- <widget class="TQLayoutWidget" row="3" column="0">
+ <widget class="QGroupBox">
<property name="name">
- <cstring>layout4</cstring>
+ <cstring>grpNormalShow</cstring>
</property>
- <grid>
+ <property name="title">
+ <string></string>
+ </property>
+ <vbox>
<property name="name">
<cstring>unnamed</cstring>
</property>
- <widget class="BGMultiWallpaperList" row="0" column="0" rowspan="5" colspan="1">
+ <widget class="TQLayoutWidget">
<property name="name">
- <cstring>m_listImages</cstring>
- </property>
- <property name="sizePolicy">
- <sizepolicy>
- <hsizetype>3</hsizetype>
- <vsizetype>3</vsizetype>
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="minimumSize">
- <size>
- <width>300</width>
- <height>100</height>
- </size>
+ <cstring>layout3</cstring>
</property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="TQLabel">
+ <property name="name">
+ <cstring>textLabel1_2</cstring>
+ </property>
+ <property name="text">
+ <string>Change &amp;picture after:</string>
+ </property>
+ <property name="buddy" stdset="0">
+ <cstring>m_spinInterval</cstring>
+ </property>
+ </widget>
+ <widget class="TQSpinBox">
+ <property name="name">
+ <cstring>m_spinInterval</cstring>
+ </property>
+ </widget>
+ <spacer>
+ <property name="name">
+ <cstring>spacer4</cstring>
+ </property>
+ <property name="orientation">
+ <enum>Horizontal</enum>
+ </property>
+ <property name="sizeType">
+ <enum>Expanding</enum>
+ </property>
+ <property name="sizeHint">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </hbox>
</widget>
- <widget class="TQPushButton" row="0" column="1">
+ <widget class="TQCheckBox">
<property name="name">
- <cstring>m_buttonAdd</cstring>
+ <cstring>m_cbRandom</cstring>
</property>
<property name="text">
- <string>&amp;Add...</string>
- </property>
- </widget>
- <spacer row="4" column="1">
- <property name="name">
- <cstring>spacer5</cstring>
- </property>
- <property name="orientation">
- <enum>Vertical</enum>
- </property>
- <property name="sizeType">
- <enum>Expanding</enum>
+ <string>&amp;Show pictures in random order</string>
</property>
- <property name="sizeHint">
- <size>
- <width>20</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- <widget class="TQPushButton" row="1" column="1">
- <property name="name">
- <cstring>m_buttonRemove</cstring>
- </property>
- <property name="text">
- <string>&amp;Remove</string>
+ <property name="accel">
+ <string>Alt+S</string>
</property>
</widget>
- <widget class="TQPushButton" row="3" column="1">
+ <widget class="TQLabel">
<property name="name">
- <cstring>m_buttonMoveDown</cstring>
+ <cstring>textLabel2</cstring>
</property>
<property name="text">
- <string>Move &amp;Down</string>
+ <string>Show the following pictures:</string>
</property>
</widget>
- <widget class="TQPushButton" row="2" column="1">
+ <widget class="TQLayoutWidget">
<property name="name">
- <cstring>m_buttonMoveUp</cstring>
- </property>
- <property name="text">
- <string>Move &amp;Up</string>
+ <cstring>layout4</cstring>
</property>
+ <grid>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="BGMultiWallpaperList" row="0" column="0" rowspan="5" colspan="1">
+ <property name="name">
+ <cstring>m_listImages</cstring>
+ </property>
+ <property name="sizePolicy">
+ <sizepolicy>
+ <hsizetype>3</hsizetype>
+ <vsizetype>3</vsizetype>
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="minimumSize">
+ <size>
+ <width>300</width>
+ <height>100</height>
+ </size>
+ </property>
+ </widget>
+ <widget class="TQPushButton" row="0" column="1">
+ <property name="name">
+ <cstring>m_buttonAdd</cstring>
+ </property>
+ <property name="text">
+ <string>&amp;Add...</string>
+ </property>
+ <property name="accel">
+ <string>Alt+A</string>
+ </property>
+ </widget>
+ <spacer row="4" column="1">
+ <property name="name">
+ <cstring>spacer5</cstring>
+ </property>
+ <property name="orientation">
+ <enum>Vertical</enum>
+ </property>
+ <property name="sizeType">
+ <enum>Expanding</enum>
+ </property>
+ <property name="sizeHint">
+ <size>
+ <width>20</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ <widget class="TQPushButton" row="1" column="1">
+ <property name="name">
+ <cstring>m_buttonRemove</cstring>
+ </property>
+ <property name="text">
+ <string>&amp;Remove</string>
+ </property>
+ <property name="accel">
+ <string>Alt+R</string>
+ </property>
+ </widget>
+ <widget class="TQPushButton" row="3" column="1">
+ <property name="name">
+ <cstring>m_buttonMoveDown</cstring>
+ </property>
+ <property name="text">
+ <string>Move &amp;Down</string>
+ </property>
+ <property name="accel">
+ <string>Alt+D</string>
+ </property>
+ </widget>
+ <widget class="TQPushButton" row="2" column="1">
+ <property name="name">
+ <cstring>m_buttonMoveUp</cstring>
+ </property>
+ <property name="text">
+ <string>Move &amp;Up</string>
+ </property>
+ <property name="accel">
+ <string>Alt+U</string>
+ </property>
+ </widget>
+ </grid>
</widget>
- </grid>
+ </vbox>
</widget>
- </grid>
+ </vbox>
</widget>
<includes>
<include location="local" impldecl="in declaration">bgwallpaper.h</include>
@@ -164,4 +218,9 @@
</includes>
<layoutdefaults spacing="3" margin="6"/>
<layoutfunctions spacing="KDialog::spacingHint" margin="KDialog::marginHint"/>
+<includehints>
+ <includehint>kurlrequester.h</includehint>
+ <includehint>klineedit.h</includehint>
+ <includehint>kpushbutton.h</includehint>
+</includehints>
</UI>

@ -0,0 +1,20 @@
--- ./kcontrol/kcontrol/KControl.desktop~ 2013-01-09 02:12:13.000000000 +0100
+++ ./kcontrol/kcontrol/KControl.desktop 2013-05-08 17:55:54.250733219 +0200
@@ -5,7 +5,7 @@
DocPath=kcontrol/index.html
X-KDE-StartupNotify=true
-Name=Control Center
+Name=Trinity Control Center
Name[af]=Beheer Sentrum
Name[ar]=مركز التحكم
Name[az]=İdarə Mərkəzi
@@ -28,7 +28,7 @@
Name[eu]=Kontrol gunea
Name[fa]=مرکز کنترل
Name[fi]=Ohjauskeskus
-Name[fr]=Centre de configuration de KDE
+Name[fr]=Centre de configuration de Trinity
Name[fy]=Konfiguraasjesintrum
Name[ga]=Lárionad Rialaithe
Name[gl]=Centro de Control

File diff suppressed because it is too large Load Diff

@ -0,0 +1,26 @@
--- trinity-tdebase-3.5.13.2~pre102+43d29f86/kdesu/kdesu/sudlg.cpp.kdesu_no_ignore 2013-05-16 22:59:53.633425236 +0200
+++ trinity-tdebase-3.5.13.2~pre102+43d29f86/kdesu/kdesu/sudlg.cpp 2013-05-16 23:00:04.685200151 +0200
@@ -15,7 +15,7 @@
#include "sudlg.h"
KDEsuDialog::KDEsuDialog(TQCString user, TQCString auth_user, bool enableKeep,const TQString& icon, bool withIgnoreButton, int timeout)
- : KPasswordDialog(Password, enableKeep, (withIgnoreButton ? User1:NoDefault), icon)
+ : KPasswordDialog(Password, enableKeep, 0, icon)
{
KConfig* config = KGlobal::config();
config->setGroup("super-user-command");
@@ -34,12 +34,10 @@
} else {
if (m_User == "root") {
prompt = i18n("The action you requested needs root privileges. "
- "Please enter root's password below or click "
- "Ignore to continue with your current privileges.");
+ "Please enter root's password below.");
} else {
prompt = i18n("The action you requested needs additional privileges. "
- "Please enter the password for \"%1\" below or click "
- "Ignore to continue with your current privileges.").arg(static_cast<const char *>(m_User));
+ "Please enter the password for \"%1\" below.").arg(static_cast<const char *>(m_User));
}
}
setPrompt(prompt);

@ -0,0 +1,229 @@
--- trinity-tdebase-3.5.13.2~pre86+807a5445/kcontrol/kdm/kdm-appear.h.kdm_theme_selector 2013-01-09 02:12:13.000000000 +0100
+++ trinity-tdebase-3.5.13.2~pre86+807a5445/kcontrol/kdm/kdm-appear.h 2013-05-09 12:58:14.535347383 +0200
@@ -26,6 +26,7 @@
#include <tqimage.h>
#include <tqfileinfo.h>
#include <tqpushbutton.h>
+#include <tqgroupbox.h>
#include <kcolorbutton.h>
#include <kurl.h>
@@ -57,6 +58,7 @@
void loadColorSchemes(KBackedComboBox *combo);
void loadGuiStyles(KBackedComboBox *combo);
+ void loadThemes(KBackedComboBox *combo);
void loadLanguageList(KLanguageButton *combo);
bool eventFilter(TQObject *, TQEvent *);
@@ -72,6 +74,7 @@
private slots:
void slotAreaRadioClicked(int id);
void slotLogoButtonClicked();
+ void slotUsethemeChanged(bool state);
void changed();
private:
@@ -85,14 +88,19 @@
TQRadioButton *logoRadio;
TQLineEdit *xLineEdit;
TQLineEdit *yLineEdit;
+ TQCheckBox * themecheck;
KBackedComboBox *compositorcombo;
KBackedComboBox *guicombo;
+ KBackedComboBox *themecombo;
KBackedComboBox *colcombo;
KBackedComboBox *echocombo;
+ TQLabel * themeimagelabel;
KLanguageButton *langcombo;
TQCheckBox *sakbox;
TQLabel *sakwarning;
+ //TQHBoxLayout * themehlay;
+ TQGroupBox *themegroup;
};
#endif
--- trinity-tdebase-3.5.13.2~pre86+807a5445/kcontrol/kdm/kdm-appear.cpp.kdm_theme_selector 2013-01-09 02:12:13.000000000 +0100
+++ trinity-tdebase-3.5.13.2~pre86+807a5445/kcontrol/kdm/kdm-appear.cpp 2013-05-09 13:00:34.428413714 +0200
@@ -28,6 +28,7 @@
#include <tqbuttongroup.h>
#include <tqlabel.h>
#include <tqlayout.h>
+#include <tqcheckbox.h>
#include <tqradiobutton.h>
#include <tqwhatsthis.h>
#include <tqvalidator.h>
@@ -35,6 +36,7 @@
#include <tqcheckbox.h>
#include <tqstyle.h>
+#include <kdesktopfile.h>
#include <klocale.h>
#include <klineedit.h>
#include <kimageio.h>
@@ -62,10 +64,43 @@
TQVBoxLayout *vbox = new TQVBoxLayout(this, KDialog::marginHint(),
KDialog::spacingHint(), "vbox");
- TQGroupBox *group = new TQGroupBox(i18n("Appearance"), this);
+
+ // ThemeBox Starts here
+
+ themecheck = new TQCheckBox( i18n("Use Theme"), this );
+ vbox->addWidget(themecheck);
+ connect(themecheck, TQT_SIGNAL(toggled(bool)), TQT_SLOT(changed()));
+ connect(themecheck, TQT_SIGNAL(toggled(bool)), TQT_SLOT(slotUsethemeChanged(bool)));
+
+ themegroup = new TQGroupBox(0, Vertical, i18n("Theme"), this);
+ vbox->addWidget(themegroup);
+
+ TQGridLayout * grid = new TQGridLayout( themegroup->layout(), 4, 3, KDialog::spacingHint() );
+
+ grid->setColStretch(1, 1);
+ grid->setColStretch(2, 1);
+
+ themecombo = new KBackedComboBox(themegroup);
+ loadThemes(themecombo);
+
+ TQLabel * label1 = new TQLabel(themecombo, i18n("KDM Theme:"),themegroup);
+ grid->addWidget(label1,1,0);
+ grid->addWidget(themecombo,1,1);
+ connect(themecombo, TQT_SIGNAL(activated(int)), TQT_SLOT(changed()));
+ connect(themecombo, TQT_SIGNAL(activated(int)), TQT_SLOT(slotThemeChanged(int)));
+
+ themeimagelabel = new TQLabel(themecombo,"",themegroup);
+
+ grid->addMultiCellWidget(themeimagelabel,1,3,2,2,TQt::AlignRight);
+
+ vbox->addStretch(1);
+ // ENDS HERE
+
+ TQGroupBox * group = new TQGroupBox(i18n("Appearance"), this);
+
vbox->addWidget(group);
- TQGridLayout *grid = new TQGridLayout( group, 5, 2, KDialog::marginHint(),
+ grid = new TQGridLayout( group, 5, 2, KDialog::marginHint(),
KDialog::spacingHint(), "grid");
grid->addRowSpacing(0, group->fontMetrics().height());
grid->setColStretch(0, 1);
@@ -267,10 +302,25 @@
}
+
+void KDMAppearanceWidget::slotUsethemeChanged(bool state)
+{
+ //themehlay->setEnabled(state);
+ //themecombo->setEnabled(state);
+ //themeimagelabel->setEnabled(state);
+ themegroup->setEnabled(state);
+}
+
+
void KDMAppearanceWidget::makeReadOnly()
{
disconnect( logobutton, TQT_SIGNAL(clicked()),
this, TQT_SLOT(slotLogoButtonClicked()) );
+
+ themecheck->setEnabled(false);
+ //themegroup->setEnabled(false);
+ themecombo->setEnabled(false);
+ themeimagelabel->setEnabled(false);
logobutton->setAcceptDrops(false);
greetstr_lined->setReadOnly(true);
noneRadio->setEnabled(false);
@@ -352,6 +402,40 @@
}
}
+void KDMAppearanceWidget::loadThemes(KBackedComboBox *combo)
+{
+ // Gets current Theme in kdmrc
+ TQString current;
+ config->setGroup("X-*-Greeter");
+ TQFileInfo Theme = config->readEntry("Theme");
+ if(Theme.exists()) {
+ current = Theme.fileName();
+ }
+
+ // List directories under "themes" directory
+ TQDir d(locate("data", TQString::fromLatin1("kdm/themes/")), "", TQDir::Name, TQDir::Dirs|TQDir::NoSymLinks|TQDir::Readable|TQDir::Executable);
+ TQStringList list = d.entryList();
+
+ combo->clear();
+ for (TQStringList::ConstIterator it = list.begin(); it != list.end(); ++it) {
+ TQString name = (*it);
+
+ if(name == "." || name == ".." ) {
+ continue;
+ }
+
+ if (name.isEmpty()) {
+ name = "default";
+ }
+
+ combo->insertItem( *it, name);
+
+ if (name == current) {
+ combo->setCurrentItem(combo->count()-1);
+ }
+ }
+}
+
bool KDMAppearanceWidget::setLogo(TQString logo)
{
TQString flogo = logo.isEmpty() ?
@@ -468,6 +552,10 @@
config->writeEntry("GUIStyle", guicombo->currentId());
+ TQString Theme = locate("data", TQString::fromLatin1("kdm/themes/"));
+ Theme.append(themecombo->currentId());
+ config->writeEntry("Theme", Theme);
+
config->writeEntry("ColorScheme", colcombo->currentId());
config->writeEntry("EchoMode", echocombo->currentId());
@@ -476,6 +564,8 @@
config->writeEntry("Language", langcombo->current());
+ config->writeEntry("UseTheme", themecheck->isChecked());
+
if (!sakwarning) {
config->writeEntry("UseSAK", sakbox->isChecked());
}
@@ -523,6 +613,8 @@
// Check the current compositor type
compositorcombo->setCurrentId(config->readEntry("Compositor"));
+ loadThemes(themecombo);
+
// Check the GUI type
guicombo->setCurrentId(config->readEntry("GUIStyle"));
@@ -544,6 +636,9 @@
// get the language
langcombo->setCurrentItem(config->readEntry("Language", "C"));
+ themecheck->setChecked(config->readBoolEntry("UseTheme",true));
+ slotUsethemeChanged(config->readBoolEntry("UseTheme",true));
+
// See if the SAK is enabled
if (!sakwarning) {
sakbox->setChecked(config->readBoolEntry("UseSAK", true));
@@ -556,10 +651,12 @@
void KDMAppearanceWidget::defaults()
{
+ themecheck->setChecked(true);
greetstr_lined->setText( i18n("Welcome to %n") );
logoRadio->setChecked( true );
slotAreaRadioClicked( KdmLogo );
setLogo( "" );
+ themecombo->setCurrentId("");
compositorcombo->setCurrentId( "" );
guicombo->setCurrentId( "" );
colcombo->setCurrentId( "" );

@ -0,0 +1,297 @@
--- ./kdmlib/kgreet_classic.cpp.ORI 2013-05-09 17:43:03.148552793 +0200
+++ ./kdmlib/kgreet_classic.cpp 2013-05-09 17:51:09.129324589 +0200
@@ -26,21 +26,30 @@
#include "themer/kdmthemer.h"
#include "themer/kdmitem.h"
+#include <kglobal.h>
#include <klocale.h>
#include <klineedit.h>
-#include <kpassdlg.h>
#include <kuser.h>
#include <tqregexp.h>
#include <tqlayout.h>
#include <tqlabel.h>
-class KDMPasswordEdit : public KPasswordEdit {
+class KDMPasswordEdit : public KLineEdit {
public:
- KDMPasswordEdit( TQWidget *parent ) : KPasswordEdit( parent, 0 ) {}
- KDMPasswordEdit( KPasswordEdit::EchoModes echoMode, TQWidget *parent ) : KPasswordEdit( echoMode, parent, 0 ) {}
+ KDMPasswordEdit( TQWidget *parent ) : KLineEdit( parent )
+ {
+ setEchoMode(TQLineEdit::Password);
+ }
+
+ KDMPasswordEdit( TQLineEdit::EchoMode echoMode, TQWidget *parent ) : KLineEdit( parent )
+ {
+ setEchoMode(echoMode);
+ }
+
+
protected:
- virtual void contextMenuEvent( TQContextMenuEvent * ) {}
+ virtual void contextMenuEvent( TQContextMenuEvent * ) {}
};
static int echoMode;
@@ -104,11 +113,11 @@
grid->addWidget( loginLabel, line, 0 );
grid->addWidget( new TQLabel( fixedUser, parent ), line++, 1 );
}
- if (echoMode == -1)
+ if (echoMode == -1) {
passwdEdit = new KDMPasswordEdit( parent );
- else
- passwdEdit = new KDMPasswordEdit( (KPasswordEdit::EchoModes)echoMode,
- parent );
+ } else {
+ passwdEdit = new KDMPasswordEdit( (TQLineEdit::EchoMode)echoMode, parent );
+ }
connect( passwdEdit, TQT_SIGNAL(textChanged( const TQString & )),
TQT_SLOT(slotActivity()) );
connect( passwdEdit, TQT_SIGNAL(lostFocus()), TQT_SLOT(slotActivity()) );
@@ -135,8 +144,8 @@
}
if (func != Authenticate) {
if (echoMode == -1) {
- passwd1Edit = new KDMPasswordEdit( (KPasswordEdit::EchoModes)echoMode, parent );
- passwd2Edit = new KDMPasswordEdit( (KPasswordEdit::EchoModes)echoMode, parent );
+ passwd1Edit = new KDMPasswordEdit( (TQLineEdit::EchoMode)echoMode, parent );
+ passwd2Edit = new KDMPasswordEdit( (TQLineEdit::EchoMode)echoMode, parent );
} else {
passwd1Edit = new KDMPasswordEdit( parent );
passwd2Edit = new KDMPasswordEdit( parent );
@@ -247,16 +256,16 @@
KGreeterPluginHandler::IsUser );
break;
case 1:
- handler->gplugReturnText( passwdEdit->password(),
+ handler->gplugReturnText( passwdEdit->text().utf8(),
KGreeterPluginHandler::IsPassword |
KGreeterPluginHandler::IsSecret );
break;
case 2:
- handler->gplugReturnText( passwd1Edit->password(),
+ handler->gplugReturnText( passwd1Edit->text().utf8(),
KGreeterPluginHandler::IsSecret );
break;
default: // case 3:
- handler->gplugReturnText( passwd2Edit->password(),
+ handler->gplugReturnText( passwd2Edit->text().utf8(),
KGreeterPluginHandler::IsNewPassword |
KGreeterPluginHandler::IsSecret );
break;
@@ -405,11 +414,11 @@
// assert( !running );
setActive2( true );
if (authTok) {
- passwd1Edit->erase();
- passwd2Edit->erase();
+ passwd1Edit->clear();
+ passwd2Edit->clear();
passwd1Edit->setFocus();
} else {
- passwdEdit->erase();
+ passwdEdit->clear();
if (loginEdit && loginEdit->isEnabled())
passwdEdit->setEnabled( true );
else {
@@ -426,7 +435,7 @@
KClassicGreeter::clear()
{
// assert( !running && !passwd1Edit );
- passwdEdit->erase();
+ passwdEdit->clear();
if (loginEdit) {
loginEdit->clear();
loginEdit->setFocus();
@@ -484,9 +493,24 @@
TQVariant (*getConf)( void *, const char *, const TQVariant & ),
void *ctx )
{
- echoMode = getConf( ctx, "EchoMode", TQVariant( -1 ) ).toInt();
- KGlobal::locale()->insertCatalogue( "kgreet_classic" );
- return true;
+ echoMode = getConf( ctx, "EchoMode", TQVariant( -1 ) ).toInt();
+ switch (echoMode)
+ {
+ case (0):
+ case (1):
+ echoMode = TQLineEdit::Password;
+ break;
+
+ case (2):
+ echoMode = TQLineEdit::NoEcho;
+ break;
+
+ default:
+ echoMode = TQLineEdit::Password;
+ }
+
+ KGlobal::locale()->insertCatalogue( "kgreet_classic" );
+ return true;
}
static void done( void )
--- ./kdmlib/kgreet_classic.h.ORI 2013-05-09 17:53:03.266961035 +0200
+++ ./kdmlib/kgreet_classic.h 2013-05-09 17:53:49.235008948 +0200
@@ -31,7 +31,6 @@
#include <tqobject.h>
class KLineEdit;
-class KPasswordEdit;
class KSimpleConfig;
class TQGridLayout;
class TQLabel;
@@ -76,7 +75,7 @@
TQLabel *loginLabel, *passwdLabel, *passwd1Label, *passwd2Label;
KLineEdit *loginEdit;
- KPasswordEdit *passwdEdit, *passwd1Edit, *passwd2Edit;
+ KLineEdit *passwdEdit, *passwd1Edit, *passwd2Edit;
KSimpleConfig *stsFile;
TQString fixedUser, curUser;
Function func;
--- ./kdmlib/kgreet_winbind.cpp.ORI 2013-05-09 17:54:36.906021481 +0200
+++ ./kdmlib/kgreet_winbind.cpp 2013-05-09 18:00:23.089847329 +0200
@@ -26,11 +26,11 @@
#include "themer/kdmthemer.h"
#include "themer/kdmitem.h"
+#include <kglobal.h>
#include <klocale.h>
#include <kdebug.h>
#include <kcombobox.h>
#include <klineedit.h>
-#include <kpassdlg.h>
#include <kuser.h>
#include <kprocio.h>
@@ -40,10 +40,17 @@
#include <stdlib.h>
-class KDMPasswordEdit : public KPasswordEdit {
+class KDMPasswordEdit : public KLineEdit {
public:
- KDMPasswordEdit( TQWidget *parent ) : KPasswordEdit( parent, 0 ) {}
- KDMPasswordEdit( KPasswordEdit::EchoModes echoMode, TQWidget *parent ) : KPasswordEdit( echoMode, parent, 0 ) {}
+ KDMPasswordEdit( TQWidget *parent ) : KLineEdit( parent )
+ {
+ setEchoMode(TQLineEdit::Password);
+ }
+ KDMPasswordEdit( TQLineEdit::EchoMode echoMode, TQWidget *parent ) : KLineEdit( parent )
+ {
+ setEchoMode(echoMode);
+ }
+
protected:
virtual void contextMenuEvent( TQContextMenuEvent * ) {}
};
@@ -150,7 +157,7 @@
if (echoMode == -1)
passwdEdit = new KDMPasswordEdit( parent );
else
- passwdEdit = new KDMPasswordEdit( (KPasswordEdit::EchoModes)echoMode,
+ passwdEdit = new KDMPasswordEdit( (TQLineEdit::EchoMode)echoMode,
parent );
connect( passwdEdit, TQT_SIGNAL(textChanged( const TQString & )),
TQT_SLOT(slotActivity()) );
@@ -180,8 +187,8 @@
}
if (func != Authenticate) {
if (echoMode == -1) {
- passwd1Edit = new KDMPasswordEdit( (KPasswordEdit::EchoModes)echoMode, parent );
- passwd2Edit = new KDMPasswordEdit( (KPasswordEdit::EchoModes)echoMode, parent );
+ passwd1Edit = new KDMPasswordEdit( (TQLineEdit::EchoMode)echoMode, parent );
+ passwd2Edit = new KDMPasswordEdit( (TQLineEdit::EchoMode)echoMode, parent );
} else {
passwd1Edit = new KDMPasswordEdit( parent );
passwd2Edit = new KDMPasswordEdit( parent );
@@ -328,16 +335,16 @@
KGreeterPluginHandler::IsUser );
break;
case 1:
- handler->gplugReturnText( passwdEdit->password(),
+ handler->gplugReturnText( passwdEdit->text().utf8(),
KGreeterPluginHandler::IsPassword |
KGreeterPluginHandler::IsSecret );
break;
case 2:
- handler->gplugReturnText( passwd1Edit->password(),
+ handler->gplugReturnText( passwd1Edit->text().utf8(),
KGreeterPluginHandler::IsSecret );
break;
default: // case 3:
- handler->gplugReturnText( passwd2Edit->password(),
+ handler->gplugReturnText( passwd2Edit->text().utf8(),
KGreeterPluginHandler::IsNewPassword |
KGreeterPluginHandler::IsSecret );
break;
@@ -486,11 +493,11 @@
// assert( !running );
setActive2( true );
if (authTok) {
- passwd1Edit->erase();
- passwd2Edit->erase();
+ passwd1Edit->clear();
+ passwd2Edit->clear();
passwd1Edit->setFocus();
} else {
- passwdEdit->erase();
+ passwdEdit->clear();
if (loginEdit && loginEdit->isEnabled())
passwdEdit->setEnabled( true );
else {
@@ -507,7 +514,7 @@
KWinbindGreeter::clear()
{
// assert( !running && !passwd1Edit );
- passwdEdit->erase();
+ passwdEdit->clear();
if (loginEdit) {
domainCombo->setCurrentItem( defaultDomain );
slotChangedDomain( defaultDomain );
@@ -632,6 +639,21 @@
void *ctx )
{
echoMode = getConf( ctx, "EchoMode", TQVariant( -1 ) ).toInt();
+ switch (echoMode)
+ {
+ case (0):
+ case (1):
+ echoMode = TQLineEdit::Password;
+ break;
+
+ case (2):
+ echoMode = TQLineEdit::NoEcho;
+ break;
+
+ default:
+ echoMode = TQLineEdit::Password;
+ }
+
staticDomains = TQStringList::split( ':', getConf( ctx, "winbind.Domains", TQVariant( "" ) ).toString() );
if (!staticDomains.contains("<local>"))
staticDomains << "<local>";
--- ./kdmlib/kgreet_winbind.h.ORI 2013-05-09 18:00:46.495362083 +0200
+++ ./kdmlib/kgreet_winbind.h 2013-05-09 18:01:22.960606033 +0200
@@ -33,7 +33,6 @@
class KComboBox;
class KLineEdit;
-class KPasswordEdit;
class KSimpleConfig;
class TQGridLayout;
class TQLabel;
@@ -85,7 +84,7 @@
TQLabel *domainLabel, *loginLabel, *passwdLabel, *passwd1Label, *passwd2Label;
KComboBox *domainCombo;
KLineEdit *loginEdit;
- KPasswordEdit *passwdEdit, *passwd1Edit, *passwd2Edit;
+ KLineEdit *passwdEdit, *passwd1Edit, *passwd2Edit;
KSimpleConfig *stsFile;
TQString fixedDomain, fixedUser, curUser;
TQStringList allUsers, mDomainListing;

@ -0,0 +1,12 @@
--- trinity-tdebase-3.5.13.2~pre100+073a32f9/CMakeLists.txt.ORI 2013-05-10 19:40:45.930287816 +0200
+++ trinity-tdebase-3.5.13.2~pre100+073a32f9/CMakeLists.txt 2013-05-10 19:40:57.593049243 +0200
@@ -244,6 +244,9 @@
endif()
##### Checks for a distribution-specific 2nd menu item, generally a shortcut to graphical package manager
+if(EXISTS "/usr/share/applications/gpk-application.desktop")
+ set( KICKOFF_DIST_CONFIG_SHORTCUT2 "/usr/share/applications/gpk-application.desktop" )
+endif()
if(EXISTS "/usr/share/applications/package-manager.desktop")
set( KICKOFF_DIST_CONFIG_SHORTCUT2 "/usr/share/applications/package-manager.desktop" )
endif()

@ -0,0 +1,16 @@
--- trinity-tdebase-3.5.13.2~pre86+807a5445/kicker/kicker/ui/default-favs.ORI 2013-05-09 22:50:36.607264087 +0200
+++ trinity-tdebase-3.5.13.2~pre86+807a5445/kicker/kicker/ui/default-favs 2013-05-09 22:50:46.935039753 +0200
@@ -1,9 +1,7 @@
-MozillaFirefox.desktop
-kde-Kontact.desktop
-writer.desktop
-kde-amarok.desktop
-kde-digikam.desktop
kde-Home.desktop
+kde-konqbrowser.desktop
+kde-Kfind.desktop
+kde-kate.desktop
+kde-konsole.desktop
kde-KControl.desktop
kde-Help.desktop
-kde-konsole.desktop

@ -0,0 +1,45 @@
--- ./kicker/kicker/ui/k_new_mnu.cpp.ori 2013-05-08 21:56:01.084691260 +0200
+++ ./kicker/kicker/ui/k_new_mnu.cpp 2013-05-08 21:58:02.086130445 +0200
@@ -1428,6 +1428,42 @@
m_systemView->insertItem( "folder_man", i18n( "My Documents" ), documentPath, documentPath, nId++, index++ );
}
+ if ( KStandardDirs::exists( KGlobalSettings::picturesPath() + "/" ) )
+ {
+ TQString picturesPath = KGlobalSettings::picturesPath();
+ if ( picturesPath.endsWith( "/" ) )
+ picturesPath = picturesPath.left( picturesPath.length() - 1 );
+ if (picturesPath!=TQDir::homeDirPath())
+ m_systemView->insertItem( "folder_image", i18n( "My Images" ), picturesPath, picturesPath, nId++, index++ );
+ }
+
+ if ( KStandardDirs::exists( KGlobalSettings::musicPath() + "/" ) )
+ {
+ TQString musicPath = KGlobalSettings::musicPath();
+ if ( musicPath.endsWith( "/" ) )
+ musicPath = musicPath.left( musicPath.length() - 1 );
+ if (musicPath!=TQDir::homeDirPath())
+ m_systemView->insertItem( "folder_sound", i18n( "My Music" ), musicPath, musicPath, nId++, index++ );
+ }
+
+ if ( KStandardDirs::exists( KGlobalSettings::videosPath() + "/" ) )
+ {
+ TQString videosPath = KGlobalSettings::videosPath();
+ if ( videosPath.endsWith( "/" ) )
+ videosPath = videosPath.left( videosPath.length() - 1 );
+ if (videosPath!=TQDir::homeDirPath())
+ m_systemView->insertItem( "folder_video", i18n( "My Videos" ), videosPath, videosPath, nId++, index++ );
+ }
+
+ if ( KStandardDirs::exists( KGlobalSettings::downloadPath() + "/" ) )
+ {
+ TQString downloadPath = KGlobalSettings::downloadPath();
+ if ( downloadPath.endsWith( "/" ) )
+ downloadPath = downloadPath.left( downloadPath.length() - 1 );
+ if (downloadPath!=TQDir::homeDirPath())
+ m_systemView->insertItem( "folder_inbox", i18n( "My Downloads" ), downloadPath, downloadPath, nId++, index++ );
+ }
+
m_systemView->insertItem( "network", i18n( "Network Folders" ),
"remote:/", "remote:/", nId++, index++ );

@ -0,0 +1,639 @@
--- ./ksmserver/startup.cpp.ori 2013-05-08 20:04:32.138717187 +0200
+++ ./ksmserver/startup.cpp 2013-05-08 20:14:12.550305958 +0200
@@ -115,43 +115,40 @@
int count = config->readNumEntry( "count" );
appsToStart = count;
- TQValueList<TQStringList> wmCommands;
- if ( !wm.isEmpty() ) {
- for ( int i = 1; i <= count; i++ ) {
- TQString n = TQString::number(i);
- if ( wm == config->readEntry( TQString("program")+n ) ) {
- wmCommands << config->readListEntry( TQString("restartCommand")+n );
- }
- }
- }
- if ( wmCommands.isEmpty() )
- wmCommands << ( TQStringList() << wm );
-
publishProgress( appsToStart, true );
connectDCOPSignal( launcher, launcher, "autoStart0Done()",
"autoStart0Done()", true);
connectDCOPSignal( launcher, launcher, "autoStart1Done()",
"autoStart1Done()", true);
connectDCOPSignal( launcher, launcher, "autoStart2Done()",
"autoStart2Done()", true);
upAndRunning( "ksmserver" );
- if ( !wmCommands.isEmpty() ) {
- // when we have a window manager, we start it first and give
- // it some time before launching other processes. Results in a
- // visually more appealing startup.
- for (uint i = 0; i < wmCommands.count(); i++)
- startApplication( wmCommands[i] );
- if ((showFancyLogin) && (!startupNotifierIPDlg)) {
- startupNotifierIPDlg = KSMStartupIPDlg::showStartupIP();
- }
- TQTimer::singleShot( 4000, this, TQT_SLOT( autoStart0() ) );
- } else {
- if ((showFancyLogin) && (!startupNotifierIPDlg)) {
- startupNotifierIPDlg = KSMStartupIPDlg::showStartupIP();
+ // find all commands to launch the wm in the session
+ TQValueList<QStringList> wmStartCommands;
+ if ( !wm.isEmpty() ) {
+ for ( int i = 1; i <= count; i++ ) {
+ TQString n = TQString::number(i);
+ // special hack for it, both kde3(=native) and kde4 kwin have the same program,
+ // but the command for kde4 kwin starts with the kde4 wrapper
+ if( config->readEntry( TQString("program")+n ) == "kwin" ) {
+ TQStringList command = config->readListEntry( TQString("restartCommand")+n );
+ if( wmCommands.count() > 1 && wmCommands[ 0 ].endsWith( "kde4" )
+ && command.count() > 1 && command[ 0 ].endsWith( "kde4" )) {
+ wmStartCommands << command; // kde4 wanted, kde4 found
+ } else if(!( wmCommands.count() > 1 && wmCommands[ 0 ].endsWith( "kde4" ))
+ && !( command.count() > 1 && command[ 0 ].endsWith( "kde4" ))) {
+ wmStartCommands << command; // native wanted, native found
+ }
+ } else if ( wm == config->readEntry( TQString("program")+n ) ) {
+ wmStartCommands << config->readListEntry( TQString("restartCommand")+n );
+ }
}
- autoStart0();
+ }
+ if( wmStartCommands.isEmpty()) { // otherwise use the configured default
+ wmStartCommands << wmCommands;
}
+ launchWM( wmStartCommands );
}
/*!
@@ -180,18 +177,57 @@
"autoStart1Done()", true);
connectDCOPSignal( launcher, launcher, "autoStart2Done()",
"autoStart2Done()", true);
- startApplication( wm );
+ launchWM( TQValueList< TQStringList >() << wmCommands );
if ((showFancyLogin) && (!startupNotifierIPDlg)) {
startupNotifierIPDlg = KSMStartupIPDlg::showStartupIP();
}
+}
+
+void KSMServer::launchWM( const QValueList< QStringList >& wmStartCommands )
+{
+ assert( state == LaunchingWM );
+
+ // when we have a window manager, we start it first and give
+ // it some time before launching other processes. Results in a
+ // visually more appealing startup.
+ wmProcess = startApplication( wmStartCommands[ 0 ] );
+ connect( wmProcess, TQT_SIGNAL( processExited( KProcess* )), TQT_SLOT( wmProcessChange()));
+ // there can be possibly more wm's (because of forking for multihead),
+ // but in such case care only about the process of the first one
+ for (unsigned int i = 1; i < wmStartCommands.count(); i++) {
+ startApplication( wmStartCommands[i] );
+ }
TQTimer::singleShot( 4000, this, TQT_SLOT( autoStart0() ) );
}
void KSMServer::clientSetProgram( KSMClient* client )
{
- if ( !wm.isEmpty() && client->program() == wm )
+ if ( client->program() == wm ) {
autoStart0();
+ }
+}
+
+void KSMServer::wmProcessChange()
+{
+ if( state != LaunchingWM )
+ { // don't care about the process when not in the wm-launching state anymore
+ wmProcess = NULL;
+ return;
+ }
+ if( !wmProcess->isRunning())
+ { // wm failed to launch for some reason, go with kwin instead
+ kdWarning( 1218 ) << "Window manager '" << wm << "' failed to launch" << endl;
+ if( wm == "kwin" ) {
+ return; // uhoh, kwin itself failed
+ }
+ kdDebug( 1218 ) << "Launching KWin" << endl;
+ wm = "kwin";
+ wmCommands = ( TQStringList() << "kwin" );
+ // launch it
+ launchWM( TQValueList< TQStringList >() << wmCommands );
+ return;
+ }
}
void KSMServer::autoStart0()
--- ./ksmserver/server.h.ORI 2013-05-08 20:16:35.950487652 +0200
+++ ./ksmserver/server.h 2013-05-08 20:19:49.069692796 +0200
@@ -30,6 +30,8 @@
#define SESSION_PREVIOUS_LOGOUT "saved at previous logout"
#define SESSION_BY_USER "saved by user"
+class KProcess;
+
typedef TQValueList<TQCString> QCStringList;
class KSMListener;
class KSMConnection;
@@ -98,6 +100,8 @@
KApplication::ShutdownType sdtype,
KApplication::ShutdownMode sdmode );
+ void launchWM( const TQValueList< TQStringList >& wmStartCommands );
+
public slots:
void cleanUp();
@@ -120,6 +124,7 @@
void autoStart2();
void tryRestoreNext();
void startupSuspendTimeout();
+ void wmProcessChange();
private:
void handlePendingInteractions();
@@ -138,7 +143,7 @@
void startProtection();
void endProtection();
- void startApplication( TQStringList command,
+ KProcess* startApplication( TQStringList command,
const TQString& clientMachine = TQString::null,
const TQString& userId = TQString::null );
void executeCommand( const TQStringList& command );
@@ -149,6 +154,7 @@
bool isCM( const TQString& program ) const;
bool isNotifier( const KSMClient* client ) const;
bool isNotifier( const TQString& program ) const;
+ void selectWm( const TQString& kdewm );
bool defaultSession() const; // empty session
void setupXIOErrorHandler();
@@ -231,6 +237,8 @@
TQString lastIdStarted;
TQStringList excludeApps;
+ TQStringList wmCommands;
+ KProcess* wmProcess;
WindowMap legacyWindows;
int initialClientCount;
--- ./ksmserver/CMakeLists.txt.ORI 2013-05-08 20:21:11.420074784 +0200
+++ ./ksmserver/CMakeLists.txt 2013-05-08 20:22:16.602794164 +0200
@@ -28,6 +28,8 @@
${DBUS_TQT_LIBRARY_DIRS}
)
+add_subdirectory( windowmanagers )
+
##### other data ################################
--- ./ksmserver/main.cpp.ori 2013-05-08 20:22:52.841082235 +0200
+++ ./ksmserver/main.cpp 2013-05-08 20:23:11.717711399 +0200
@@ -203,8 +203,6 @@
}
TQCString wm = args->getOption("windowmanager");
- if ( wm.isEmpty() )
- wm = "kwin";
bool only_local = args->isSet("local");
#ifndef HAVE__ICETRANSNOLISTEN
--- ./ksmserver/server.cpp.ori 2013-05-08 20:24:02.870706512 +0200
+++ ./ksmserver/server.cpp 2013-05-08 20:35:02.808745909 +0200
@@ -77,6 +77,8 @@
#include <kprocess.h>
#include <dcopclient.h>
#include <dcopref.h>
+#include <kdesktopfile.h>
+#include <kshell.h>
#include "server.h"
#include "global.h"
@@ -98,11 +100,11 @@
/*! Utility function to execute a command on the local machine. Used
* to restart applications.
*/
-void KSMServer::startApplication( TQStringList command, const TQString& clientMachine,
+KProcess* KSMServer::startApplication( TQStringList command, const TQString& clientMachine,
const TQString& userId )
{
if ( command.isEmpty() )
- return;
+ return NULL;
if ( !userId.isEmpty()) {
struct passwd* pw = getpwuid( getuid());
if( pw != NULL && userId != TQString::fromLocal8Bit( pw->pw_name )) {
@@ -116,12 +118,13 @@
command.prepend( clientMachine );
command.prepend( xonCommand ); // "xon" by default
}
- int n = command.count();
- TQCString app = command[0].latin1();
- TQValueList<TQCString> argList;
- for ( int i=1; i < n; i++)
- argList.append( TQCString(command[i].latin1()));
- DCOPRef( launcher ).send( "exec_blind", app, DCOPArg( argList, "TQValueList<TQCString>" ) );
+ KProcess* process = new KProcess( this );
+ *process << command;
+ // make it auto-delete
+ connect( process, TQT_SIGNAL( processExited( KProcess* )), process, TQT_SLOT( deleteLater()));
+ process->start();
+ return process;
+
}
/*! Utility function to execute a command on the local machine. Used
@@ -579,7 +582,7 @@
#endif
KSMServer::KSMServer( const TQString& windowManager, bool _only_local )
- : DCOPObject("ksmserver"), sessionGroup( "" ), startupNotifierIPDlg(0), shutdownNotifierIPDlg(0)
+ : DCOPObject("ksmserver"), sessionGroup( "" ), startupNotifierIPDlg(0), shutdownNotifierIPDlg(0), wmProcess( NULL )
{
the_server = this;
clean = false;
@@ -595,7 +598,10 @@
config->setGroup("General" );
clientInteracting = 0;
xonCommand = config->readEntry( "xonCommand", "xon" );
-
+
+ KGlobal::dirs()->addResourceType( "windowmanagers", "share/apps/ksmserver/windowmanagers" );
+ selectWm( windowManager );
+
connect( &knotifyTimeoutTimer, TQT_SIGNAL( timeout()), TQT_SLOT( knotifyTimeout()));
connect( &startupSuspendTimeoutTimer, TQT_SIGNAL( timeout()), TQT_SLOT( startupSuspendTimeout()));
connect( &pendingShutdown, TQT_SIGNAL( timeout()), TQT_SLOT( pendingShutdownTimeout()));
@@ -851,15 +857,15 @@
config->setGroup( sessionGroup );
count = 0;
- if ( !wm.isEmpty() ) {
- // put the wm first
- for ( KSMClient* c = clients.first(); c; c = clients.next() )
- if ( c->program() == wm ) {
- clients.prepend( clients.take() );
- break;
- }
+ // put the wm first
+ for ( KSMClient* c = clients.first(); c; c = clients.next() ) {
+ if ( c->program() == wm ) {
+ clients.prepend( clients.take() );
+ break;
+ }
}
+
for ( KSMClient* c = clients.first(); c; c = clients.next() ) {
int restartHint = c->restartStyleHint();
if (restartHint == SmRestartNever)
@@ -909,11 +915,7 @@
bool KSMServer::isWM( const TQString& program ) const
{
- // KWin relies on ksmserver's special treatment in phase1,
- // therefore make sure it's recognized even if ksmserver
- // was initially started with different WM, and kwin replaced
- // it later
- return ((program == wm) || (program == "kwin"));
+ return program == wm;
}
bool KSMServer::isCM( const KSMClient* client ) const
@@ -941,3 +943,62 @@
{
return sessionGroup.isEmpty();
}
+
+static bool noDisplay( KDesktopFile& f )
+{
+ KConfigGroup gr( &f, "Desktop Entry" );
+ if (gr.readBoolEntry("NoDisplay", false)) {
+ return true;
+ }
+ if (gr.hasKey("OnlyShowIn")) {
+ if (!gr.readListEntry("OnlyShowIn", ';').contains("KDE"))
+ return true;
+ }
+ if (gr.hasKey("NotShowIn")) {
+ if (gr.readListEntry("NotShowIn", ';').contains("KDE"))
+ return true;
+ }
+ return false;
+}
+
+// selection logic:
+// - $KDEWM is set - use that
+// - a wm is selected using the kcm - use that
+// - if that fails, just use KWin
+void KSMServer::selectWm( const TQString& kdewm )
+{
+ wm = "kwin"; // defaults
+ wmCommands = ( TQStringList() << "kwin" );
+ if( !kdewm.isEmpty())
+ {
+ wmCommands = ( TQStringList() << kdewm );
+ wm = kdewm;
+ return;
+ }
+ KConfigGroup config(KGlobal::config(), "General");
+ TQString cfgwm = config.readEntry( "windowManager", "kwin" );
+ KDesktopFile file( cfgwm + ".desktop", true, "windowmanagers" );
+ if( noDisplay( file )) {
+ return;
+ }
+ if( !file.tryExec()) {
+ return;
+ }
+ file.setDesktopGroup();
+ TQString testexec = file.readEntry( "X-KDE-WindowManagerTestExec" );
+ if( !testexec.isEmpty())
+ {
+ int ret = system( TQFile::encodeName( testexec ));
+ if( !WIFEXITED( ret ) || WEXITSTATUS( ret ) != 0 ) {
+ return;
+ }
+ }
+ TQStringList cfgWmCommands = KShell::splitArgs( file.readEntry( "Exec" ));
+ if( cfgWmCommands.isEmpty()) {
+ return;
+ }
+ TQString smname = file.readEntry( "X-KDE-WindowManagerId" );
+ // ok
+ wm = smname.isEmpty() ? cfgwm : smname;
+ wmCommands = cfgWmCommands;
+}
Index: ksmserver/windowmanagers/CMakeLists.txt
===================================================================
--- /dev/null
+++ ./ksmserver/windowmanagers/CMakeLists.txt
@@ -0,0 +1,4 @@
+install(
+ FILES compiz-custom.desktop compiz.desktop kwin4.desktop metacity.desktop openbox.desktop
+ DESTINATION ${DATA_INSTALL_DIR}/ksmserver/windowmanagers
+)
Index: ksmserver/windowmanagers/openbox.desktop
===================================================================
--- /dev/null
+++ ./ksmserver/windowmanagers/openbox.desktop
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Name=Openbox
+Exec=openbox
+TryExec=openbox
+
Index: ksmserver/windowmanagers/compiz.desktop
===================================================================
--- /dev/null
+++ ./ksmserver/windowmanagers/compiz.desktop
@@ -0,0 +1,4 @@
+[Desktop Entry]
+Name=Compiz
+Exec=compiz ccp
+TryExec=compiz
Index: ksmserver/windowmanagers/compiz-custom.desktop
===================================================================
--- /dev/null
+++ ./ksmserver/windowmanagers/compiz-custom.desktop
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Name=Compiz custom (create wrapper script 'compiz-kde-launcher' to launch it)
+Exec=compiz-kde-launcher
+TryExec=compiz
+X-KDE-WindowManagerId=compiz
Index: ksmserver/windowmanagers/kwin4.desktop
===================================================================
--- /dev/null
+++ ./ksmserver/windowmanagers/kwin4.desktop
@@ -0,0 +1,6 @@
+[Desktop Entry]
+Name=KWin (KDE4)
+Exec=kde4 /usr/bin/kwin
+TryExec=/usr/bin/kwin
+X-KDE-WindowManagerId=kwin
+
Index: ksmserver/windowmanagers/metacity.desktop
===================================================================
--- /dev/null
+++ ./ksmserver/windowmanagers/metacity.desktop
@@ -0,0 +1,4 @@
+[Desktop Entry]
+Name=Metacity (GNOME)
+Exec=metacity
+TryExec=metacity
--- ./kcontrol/smserver/smserverconfigdlg.ui.ori 2013-05-08 20:42:59.226232919 +0200
+++ ./kcontrol/smserver/smserverconfigdlg.ui 2013-05-08 20:45:53.648749758 +0200
@@ -1,4 +1,4 @@
-<!DOCTYPE UI><UI version="3.2" stdsetdef="1">
+<!DOCTYPE UI><UI version="3.3" stdsetdef="1">
<class>SMServerConfigDlg</class>
<widget class="TQWidget">
<property name="name">
@@ -8,8 +8,8 @@
<rect>
<x>0</x>
<y>0</y>
- <width>325</width>
- <height>366</height>
+ <width>334</width>
+ <height>476</height>
</rect>
</property>
<property name="caption">
@@ -173,6 +173,24 @@
</widget>
</vbox>
</widget>
+ <widget class="TQGroupBox">
+ <property name="name">
+ <cstring>windowManagerGroup</cstring>
+ </property>
+ <property name="title">
+ <string>Window Manager</string>
+ </property>
+ <hbox>
+ <property name="name">
+ <cstring>unnamed</cstring>
+ </property>
+ <widget class="TQComboBox">
+ <property name="name">
+ <cstring>windowManagerCombo</cstring>
+ </property>
+ </widget>
+ </hbox>
+ </widget>
<widget class="TQButtonGroup">
<property name="name">
<cstring>advancedGroup</cstring>
@@ -279,6 +297,12 @@
<receiver>SMServerConfigDlg</receiver>
<slot>configChanged()</slot>
</connection>
+ <connection>
+ <sender>windowManagerCombo</sender>
+ <signal>activated(int)</signal>
+ <receiver>SMServerConfigDlg</receiver>
+ <slot>configChanged()</slot>
+ </connection>
</connections>
<includes>
<include location="global" impldecl="in implementation">kdialog.h</include>
--- ./kcontrol/smserver/kcmsmserver.cpp.ORI 2013-05-08 20:47:16.855088794 +0200
+++ ./kcontrol/smserver/kcmsmserver.cpp 2013-05-08 20:57:27.009783724 +0200
@@ -22,6 +22,8 @@
#include <tqcheckbox.h>
#include <tqlayout.h>
#include <tqradiobutton.h>
+#include <tqcombobox.h>
+#include <tqfile.h>
#include <dcopclient.h>
@@ -29,6 +31,12 @@
#include <kconfig.h>
#include <kgenericfactory.h>
#include <klineedit.h>
+#include <kstandarddirs.h>
+#include <tqregexp.h>
+#include <kdesktopfile.h>
+#include <kdebug.h>
+#include <kprocess.h>
+#include <kmessagebox.h>
#include "kcmsmserver.h"
#include "smserverconfigimpl.h"
@@ -52,6 +60,7 @@
dialog->show();
topLayout->add(dialog);
+ KGlobal::dirs()->addResourceType( "windowmanagers", "share/apps/ksmserver/windowmanagers" );
load();
}
@@ -90,6 +99,7 @@
dialog->logoutRadio->setChecked(true);
break;
}
+ loadWMs(c->readEntry("windowManager", "kwin"));
dialog->excludeLineedit->setText( c->readEntry("excludeApps"));
c->setGroup("Logout");
@@ -121,6 +131,7 @@
dialog->rebootRadio->isChecked() ?
int(KApplication::ShutdownTypeReboot) :
int(KApplication::ShutdownTypeNone));
+ c->writeEntry("windowManager", currentWM());
c->writeEntry("excludeApps", dialog->excludeLineedit->text());
c->setGroup("Logout");
c->writeEntry( "showLogoutStatusDlg", dialog->showLogoutStatusDialog->isChecked());
@@ -131,6 +142,12 @@
// update the k menu if necessary
TQByteArray data;
kapp->dcopClient()->send( "kicker", "kicker", "configure()", data );
+ if( oldwm != currentWM())
+ { // TODO switch it already in the session instead and tell ksmserver
+ KMessageBox::information( this,
+ i18n( "The new window manager will be used when TDE is started the next time." ),
+ i18n( "Window manager change" ), "windowmanagerchange" );
+ }
}
void SMServerConfig::defaults()
@@ -138,5 +155,79 @@
load( true );
}
+static bool noDisplay( KDesktopFile& f )
+{
+ KConfigGroup gr( &f, "Desktop Entry" );
+ if (gr.readBoolEntry("NoDisplay", false)) {
+ return true;
+ }
+ if (gr.hasKey("OnlyShowIn")) {
+ if (!gr.readListEntry("OnlyShowIn", ';').contains("KDE"))
+ return true;
+ }
+ if (gr.hasKey("NotShowIn")) {
+ if (gr.readListEntry("NotShowIn", ';').contains("KDE"))
+ return true;
+ }
+ return false;
+}
+
+void SMServerConfig::loadWMs( const TQString& current )
+{
+ TQString kwinname = i18n( "KWin (KDE default)" );
+ dialog->windowManagerCombo->insertItem( kwinname );
+ dialog->windowManagerCombo->setCurrentItem( 0 );
+ wms[ kwinname ] = "kwin";
+ oldwm = "kwin";
+ TQStringList list = KGlobal::dirs()->findAllResources( "windowmanagers", TQString(), false, true );
+ TQRegExp reg( ".*/([^/\\.]*)\\.[^/\\.]*" );
+ for( TQStringList::ConstIterator it = list.begin();
+ it != list.end();
+ ++it )
+ {
+ TQString wmfile = *it;
+ KDesktopFile file( wmfile );
+ if( noDisplay( file )) {
+ continue;
+ }
+ if( !file.tryExec()) {
+ continue;
+ }
+ file.setDesktopGroup();
+ TQString testexec = file.readEntry( "X-KDE-WindowManagerTestExec" );
+ if( !testexec.isEmpty())
+ {
+ int ret = system( TQFile::encodeName( testexec ));
+ if( !WIFEXITED( ret ) || WEXITSTATUS( ret ) != 0 ) {
+ continue;
+ }
+ }
+ TQString name = file.readName();
+ if( name.isEmpty()) {
+ continue;
+ }
+ if( !reg.exactMatch( wmfile )) {
+ continue;
+ }
+ TQString wm = reg.cap( 1 );
+ if( wms.values().contains( wm )) {
+ continue;
+ }
+ wms[ name ] = wm;
+ dialog->windowManagerCombo->insertItem( name );
+ if( wms[ name ] == current ) // make it selected
+ {
+ dialog->windowManagerCombo->setCurrentItem( dialog->windowManagerCombo->count() - 1 );
+ oldwm = wm;
+ }
+ }
+}
+
+TQString SMServerConfig::currentWM() const
+{
+ return wms[ dialog->windowManagerCombo->currentText() ];
+}
+
+
#include "kcmsmserver.moc"
--- ./kcontrol/smserver/kcmsmserver.h.ORI 2013-05-08 20:58:45.880171397 +0200
+++ ./kcontrol/smserver/kcmsmserver.h 2013-05-08 20:59:21.030453176 +0200
@@ -40,6 +40,10 @@
private:
SMServerConfigImpl* dialog;
+ void loadWMs( const TQString& current );
+ TQString currentWM() const;
+ TQMap< TQString, TQString > wms; // i18n text -> internal name
+ TQString oldwm; // the original value
};

@ -0,0 +1,152 @@
--- ./kioslave/media/libmediacommon/medium.cpp.ori 2013-05-08 22:57:09.317384423 +0200
+++ ./kioslave/media/libmediacommon/medium.cpp 2013-05-08 22:57:36.730837358 +0200
@@ -44,6 +44,7 @@
loadUserLabel();
m_halmounted = false;
+ m_isHotplug = false;
}
Medium::Medium()
@@ -65,6 +66,7 @@
m_properties+= TQString::null; /* CLEAR_DEVICE_UDI */
m_halmounted = false;
+ m_isHotplug = false;
}
const Medium Medium::create(const TQStringList &properties)
--- ./kioslave/media/libmediacommon/medium.h.ORI 2013-05-08 22:59:10.772959829 +0200
+++ ./kioslave/media/libmediacommon/medium.h 2013-05-08 22:59:56.602044404 +0200
@@ -92,6 +92,9 @@
void setHalMounted(bool flag) const { m_halmounted = flag; }
bool halMounted() const { return m_halmounted; }
+ void setIsHotplug( bool state ) { m_isHotplug = state; }
+ bool isHotplug() const { return m_isHotplug; }
+
//private:
Medium();
@@ -100,6 +103,8 @@
TQStringList m_properties;
mutable bool m_halmounted;
+
+ bool m_isHotplug;
friend class TQValueListNode<const Medium>;
};
--- ./kioslave/media/mediamanager/mediamanager.cpp.ori 2013-05-08 23:00:39.673183801 +0200
+++ ./kioslave/media/mediamanager/mediamanager.cpp 2013-05-08 23:04:47.639224260 +0200
@@ -354,6 +354,57 @@
emit mediumChanged(name);
}
+TQString MediaManager::unmountAllSuspend()
+{
+ TQPtrList<Medium> list = m_mediaList.list();
+
+ TQPtrList<Medium>::const_iterator it = list.begin();
+ TQPtrList<Medium>::const_iterator end = list.end();
+
+ TQString result;
+
+ for (; it!=end; ++it)
+ {
+ if ( (*it)->isMounted() && (*it)->isHotplug() )
+ {
+ TQString tmp = unmount( (*it)->id() );
+ if ( !tmp.isEmpty() ) { // umount failed
+ result = tmp;
+ } else {
+ m_suspendResumeMountList.append( (*it)->id() );
+ }
+ }
+ }
+
+ // return last error
+ return result;
+}
+
+TQString MediaManager::remountAllResume()
+{
+ TQString result;
+
+ for (TQStringList::const_iterator it = m_suspendResumeMountList.begin();
+ it != m_suspendResumeMountList.end();
+ ++it)
+ {
+ const Medium *m = m_mediaList.findById(*it);
+
+ if ( m && m->needMounting() )
+ {
+ TQString tmp = mount( *it );
+ if ( !tmp.isEmpty() ) { // mount failed
+ result = tmp;
+ }
+ }
+ }
+
+ m_suspendResumeMountList.clear();
+
+ // return last error
+ return result;
+}
+
extern "C" {
KDE_EXPORT KDEDModule *create_mediamanager(const TQCString &obj)
--- ./kioslave/media/mediamanager/mediamanager.h.ORI 2013-05-08 23:05:36.250251036 +0200
+++ ./kioslave/media/mediamanager/mediamanager.h 2013-05-08 23:07:27.650019601 +0200
@@ -60,6 +60,20 @@
bool removableUnplug(const TQString &devNode);
bool removableCamera(const TQString &devNode);
+ /**
+ * Unmount manually all partitions when going to suspend
+ *
+ * @return last error if any
+ */
+ TQString unmountAllSuspend();
+
+ /**
+ * Remount previously unmounted partitions in unmountAllSuspend()
+ *
+ * @return last error if any
+ */
+ TQString remountAllResume();
+
k_dcop_signals:
void mediumAdded(const TQString &name, bool allowNotification);
void mediumRemoved(const TQString &name, bool allowNotification);
@@ -87,6 +101,8 @@
HALBackend *m_halbackend;
MediaDirNotify m_dirNotify;
FstabBackend *m_fstabbackend;
+ TQStringList m_suspendResumeMountList;
+
};
#endif
--- ./kioslave/media/mediamanager/halbackend.cpp.ori 2013-05-08 23:08:12.196126863 +0200
+++ ./kioslave/media/mediamanager/halbackend.cpp 2013-05-08 23:08:51.096347073 +0200
@@ -541,6 +541,7 @@
libhal_volume_is_mounted(halVolume) ); /* Mounted ? */
}
+ medium->setIsHotplug( libhal_drive_is_hotpluggable(halDrive) );
char* name = libhal_volume_policy_compute_display_name(halDrive, halVolume, m_halStoragePolicy);
TQString volume_name = TQString::fromUtf8(name);
--- ./kioslave/media/mediamanager/halbackend.h.ORI 2013-05-08 23:09:35.761451488 +0200
+++ ./kioslave/media/mediamanager/halbackend.h 2013-05-08 23:10:21.608531952 +0200
@@ -89,6 +89,8 @@
TQString decrypt(const TQString &id, const TQString &password);
TQString undecrypt(const TQString &id);
+ static bool isHotplug( const TQString & id );
+
private:
/**
* Append a device in the media list. This function will check if the device

@ -0,0 +1,186 @@
--- trinity-tdebase-3.5.13.2~pre102+43d29f86/kcontrol/screensaver/scrnsave.h.ORI 2013-05-14 22:12:18.159235590 +0200
+++ trinity-tdebase-3.5.13.2~pre102+43d29f86/kcontrol/screensaver/scrnsave.h 2013-05-14 22:12:56.657422259 +0200
@@ -58,6 +58,7 @@
void slotLock( bool );
void slotDelaySaverStart( bool );
void slotUseTSAK( bool );
+ void slotVibrateUnlock( bool );
void slotUseUnmanagedLockWindows( bool );
void slotHideActiveWindowsFromSaver( bool );
void processLockouts();
@@ -101,6 +102,7 @@
TQGroupBox *mSettingsGroup;
TQCheckBox *mDelaySaverStartCheckBox;
TQCheckBox *mUseTSAKCheckBox;
+ TQCheckBox *mVibrateUnlockCheckBox;
TQCheckBox *mUseUnmanagedLockWindowsCheckBox;
TQCheckBox *mHideActiveWindowsFromSaverCheckBox;
@@ -119,6 +121,7 @@
bool mImmutable;
bool mDelaySaverStart;
bool mUseTSAK;
+ bool mVibrateUnlock;
bool mUseUnmanagedLockWindows;
bool mHideActiveWindowsFromSaver;
--- trinity-tdebase-3.5.13.2~pre102+43d29f86/kcontrol/screensaver/scrnsave.cpp.vibrate_dialog 2013-04-26 22:15:23.000000000 +0200
+++ trinity-tdebase-3.5.13.2~pre102+43d29f86/kcontrol/screensaver/scrnsave.cpp 2013-05-14 22:24:37.354375502 +0200
@@ -270,6 +270,13 @@
settingsGroupLayout->addWidget(mHideActiveWindowsFromSaverCheckBox, 3, 1);
TQWhatsThis::add( mHideActiveWindowsFromSaverCheckBox, i18n("Hide all active windows from the screen saver and use the desktop background as the screen saver input.") );
+ mVibrateUnlockCheckBox = new TQCheckBox( i18n("&Vibrate unlock dialog box on failure"), mSettingsGroup );
+ mVibrateUnlockCheckBox->setEnabled( true );
+ mVibrateUnlockCheckBox->setChecked( mVibrateUnlock );
+ connect( mVibrateUnlockCheckBox, TQT_SIGNAL( toggled( bool ) ), this, TQT_SLOT( slotVibrateUnlock( bool ) ) );
+ settingsGroupLayout->addWidget(mVibrateUnlockCheckBox, 4, 1);
+ TQWhatsThis::add( mVibrateUnlockCheckBox, i18n("Makes the unlock dialog box vibrate when entering an incorrect password.") );
+
// right column
TQBoxLayout* rightColumnLayout = new TQVBoxLayout(topLayout, KDialog::spacingHint());
@@ -429,6 +436,7 @@
mLock = config->readBoolEntry("Lock", false);
mDelaySaverStart = config->readBoolEntry("DelaySaverStart", true);
mUseTSAK = config->readBoolEntry("UseTDESAK", true);
+ mVibrateUnlock = config->readBoolEntry("VibrateUnlock", true);
mUseUnmanagedLockWindows = config->readBoolEntry("UseUnmanagedLockWindows", false);
mHideActiveWindowsFromSaver = config->readBoolEntry("HideActiveWindowsFromSaver", true);
mSaver = config->readEntry("Saver");
@@ -481,6 +489,7 @@
config->writeEntry("Lock", mLock);
config->writeEntry("DelaySaverStart", mDelaySaverStart);
config->writeEntry("UseTDESAK", mUseTSAK);
+ config->writeEntry("VibrateUnlock", mVibrateUnlock);
config->writeEntry("UseUnmanagedLockWindows", mUseUnmanagedLockWindows);
config->writeEntry("HideActiveWindowsFromSaver", mHideActiveWindowsFromSaver);
@@ -688,10 +697,14 @@
mUseTSAKCheckBox->setChecked( false );
}
if (!mUseUnmanagedLockWindows) {
+ mVibrateUnlockCheckBox->setEnabled( true );
+ mVibrateUnlockCheckBox->setChecked( mVibrateUnlock );
mHideActiveWindowsFromSaverCheckBox->setEnabled( true );
mHideActiveWindowsFromSaverCheckBox->setChecked( mHideActiveWindowsFromSaver );
}
else {
+ mVibrateUnlockCheckBox->setEnabled( false );
+ mVibrateUnlockCheckBox->setChecked( false );
mHideActiveWindowsFromSaverCheckBox->setEnabled( false );
mHideActiveWindowsFromSaverCheckBox->setChecked( false );
}
@@ -936,6 +949,16 @@
processLockouts();
mChanged = true;
emit changed(true);
+}
+
+//---------------------------------------------------------------------------
+//
+void KScreenSaver::slotVibrateUnlock( bool u )
+{
+ if (mVibrateUnlockCheckBox->isEnabled()) mVibrateUnlock = u;
+ processLockouts();
+ mChanged = true;
+ emit changed(true);
}
//---------------------------------------------------------------------------
--- trinity-tdebase-3.5.13.2~pre102+43d29f86/kdesktop/lock/lockdlg.h.vibrate_dialog 2013-01-09 02:12:13.000000000 +0100
+++ trinity-tdebase-3.5.13.2~pre102+43d29f86/kdesktop/lock/lockdlg.h 2013-05-14 22:42:50.562878532 +0200
@@ -60,6 +60,7 @@
void slotOK();
void layoutClicked();
void slotActivity();
+ void moveTimerDone();
protected slots:
virtual void reject();
@@ -79,6 +80,8 @@
void handleVerify();
void reapVerify();
void cantCheck();
+ void movedialog( int _move );
+ void badPasswordLogin();
GreeterPluginHandle *mPlugin;
KGreeterPlugin *greet;
TQFrame *frame;
@@ -95,6 +98,8 @@
int sPid, sFd;
TQListView *lv;
TQDateTime m_lockStartDT;
+ bool waitMoveDialog;
+ bool VibrateUnlock;
};
#endif
--- trinity-tdebase-3.5.13.2~pre102+43d29f86/kdesktop/lock/lockdlg.cc.vibrate_dialog 2013-01-09 02:12:13.000000000 +0100
+++ trinity-tdebase-3.5.13.2~pre102+43d29f86/kdesktop/lock/lockdlg.cc 2013-05-14 22:42:12.809621715 +0200
@@ -55,6 +55,7 @@
#include <X11/keysym.h>
#include <X11/Xatom.h>
#include <fixx11h.h>
+#include <kapplication.h>
#ifndef AF_LOCAL
# define AF_LOCAL AF_UNIX
@@ -246,6 +247,11 @@
mLayoutButton->hide(); // no kxkb running
}
capsLocked();
+
+ KConfig* config = new KConfig("kdesktoprc");
+ config->setGroup("ScreenSaver");
+ VibrateUnlock = config->readBoolEntry("VibrateUnlock", true);
+ delete config;
}
PasswordDlg::~PasswordDlg()
@@ -302,6 +308,37 @@
}
}
+void PasswordDlg::movedialog( int _move )
+{
+ waitMoveDialog = true;
+ this->move(pos().x()+_move, pos().y());
+ TQTimer::singleShot( 50, this, TQT_SLOT(moveTimerDone()) );
+ while (waitMoveDialog) {
+ kapp->processEvents();
+ }
+}
+
+void PasswordDlg::moveTimerDone()
+{
+ waitMoveDialog = false;
+}
+
+void PasswordDlg::badPasswordLogin()
+{
+ if ( VibrateUnlock && mUnlockingFailed )
+ {
+ for ( int i = 0 ; i<2 ; i++)
+ {
+ movedialog( 10 );
+ movedialog( -20 );
+ movedialog( 20 );
+ movedialog( -20 );
+ movedialog( 20 );
+ movedialog( -10 );
+ }
+ }
+}
+
//---------------------------------------------------------------------------
//
// Handle timer events.
@@ -437,6 +474,7 @@
ok->setEnabled(false);
cancel->setEnabled(false);
mNewSessButton->setEnabled( false );
+ badPasswordLogin();
return;
case AuthAbort:
return;

@ -0,0 +1,170 @@
commit c5dacf57e07e93dd186692d4de64fbe9784af87d
Author: Timothy Pearson <kb9vqf@pearsoncomputing.net>
Date: 1365376170 -0500
Allow kvoctrain to build even if undefined symbols have been disallowed
This relates to Bug 1134
diff --git a/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp b/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
index d48a7eb..d148f85 100644
--- a/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
@@ -32,6 +32,55 @@
#include <vector>
using namespace std;
+vector<int> getCsvOrder(kvoctrainDoc *doc)
+{
+ vector<int> csv_order;
+ TQStringList lang_order = Prefs::pasteOrder();
+
+ if (!Prefs::useCurrent())
+ {
+ if (/*lang_order &&*/ lang_order.count() != 0) {
+ for (int i = 0; i < (int) lang_order.count(); i++)
+ {
+ int j = doc->findIdent((lang_order)[i]);
+ if (j >= 0)
+ csv_order.push_back (j);
+ else
+ csv_order.push_back (-1);
+ }
+ }
+ }
+/*
+ for (int i = 0; i < csv_order.size(); i++)
+ cout << csv_order[i] << " ";
+ cout << endl;
+*/
+
+/* perhaps skip missing ??
+ for (int i = csv_order.size()-1; i >= 0; i--)
+ if (csv_order[i] == -1)
+ csv_order.erase(csv_order.begin() + i);
+*/
+ // append indices from doc if no order given
+ for (int i = 0; i < doc->numLangs(); i++)
+ if (::find (csv_order.begin(), csv_order.end(), i) == csv_order.end())
+ csv_order.push_back(i);
+/*
+ if (csv_order.size() > doc->numLangs() )
+ csv_order.erase(csv_order.begin() + doc->numLangs(), csv_order.end());
+*/
+
+ // remove trailing garbage
+ for (int i = csv_order.size()-1; i >= 0; i--) {
+ if (csv_order[i] != -1)
+ break;
+ else
+ csv_order.erase(csv_order.begin() + i);
+ }
+
+ return csv_order;
+}
+
bool kvoctrainDoc::saveTypeNameCsv (TQTextStream &)
{
return true;
@@ -70,7 +119,7 @@ bool kvoctrainDoc::saveToCsv (TQTextStream& os, TQString &)
os << i18n("! Title:") << separator << getTitle() << "\n";
os << i18n("! Author:") << separator << getAuthor() << "\n";
- vector <int> csv_order = kvoctrainApp::getCsvOrder(this);
+ vector <int> csv_order = getCsvOrder(this);
vector<kvoctrainExpr>::const_iterator first = vocabulary.begin ();
TQString exp;
commit 2e1267ad62d5a62f6ace0e5452c07f4c8b685d6a
Author: Timothy Pearson <kb9vqf@pearsoncomputing.net>
Date: 1365377332 -0500
Reconsolidate split code from prior commit
diff --git a/kvoctrain/kvoctrain/kva_clip.cpp b/kvoctrain/kvoctrain/kva_clip.cpp
index 881fbed..66e1ca9 100644
--- a/kvoctrain/kvoctrain/kva_clip.cpp
+++ b/kvoctrain/kvoctrain/kva_clip.cpp
@@ -35,6 +35,8 @@
#include <algorithm>
using namespace std;
+extern vector<int> getCsvOrderStatic(kvoctrainDoc *doc);
+
void kvoctrainApp::slotSmartSearchClip()
{
TQString s;
@@ -62,51 +64,7 @@ void kvoctrainApp::slotSmartSearchClip()
vector<int> kvoctrainApp::getCsvOrder(kvoctrainDoc *doc)
{
- vector<int> csv_order;
- TQStringList lang_order = Prefs::pasteOrder();
-
- if (!Prefs::useCurrent())
- {
- if (/*lang_order &&*/ lang_order.count() != 0) {
- for (int i = 0; i < (int) lang_order.count(); i++)
- {
- int j = doc->findIdent((lang_order)[i]);
- if (j >= 0)
- csv_order.push_back (j);
- else
- csv_order.push_back (-1);
- }
- }
- }
-/*
- for (int i = 0; i < csv_order.size(); i++)
- cout << csv_order[i] << " ";
- cout << endl;
-*/
-
-/* perhaps skip missing ??
- for (int i = csv_order.size()-1; i >= 0; i--)
- if (csv_order[i] == -1)
- csv_order.erase(csv_order.begin() + i);
-*/
- // append indices from doc if no order given
- for (int i = 0; i < doc->numLangs(); i++)
- if (::find (csv_order.begin(), csv_order.end(), i) == csv_order.end())
- csv_order.push_back(i);
-/*
- if (csv_order.size() > doc->numLangs() )
- csv_order.erase(csv_order.begin() + doc->numLangs(), csv_order.end());
-*/
-
- // remove trailing garbage
- for (int i = csv_order.size()-1; i >= 0; i--) {
- if (csv_order[i] != -1)
- break;
- else
- csv_order.erase(csv_order.begin() + i);
- }
-
- return csv_order;
+ return getCsvOrderStatic(doc);
}
diff --git a/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp b/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
index d148f85..d1d2212 100644
--- a/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
+++ b/kvoctrain/kvoctrain/kvt-core/kvd_csv.cpp
@@ -32,7 +32,7 @@
#include <vector>
using namespace std;
-vector<int> getCsvOrder(kvoctrainDoc *doc)
+vector<int> getCsvOrderStatic(kvoctrainDoc *doc)
{
vector<int> csv_order;
TQStringList lang_order = Prefs::pasteOrder();
@@ -119,7 +119,7 @@ bool kvoctrainDoc::saveToCsv (TQTextStream& os, TQString &)
os << i18n("! Title:") << separator << getTitle() << "\n";
os << i18n("! Author:") << separator << getAuthor() << "\n";
- vector <int> csv_order = getCsvOrder(this);
+ vector <int> csv_order = getCsvOrderStatic(this);
vector<kvoctrainExpr>::const_iterator first = vocabulary.begin ();
TQString exp;

@ -0,0 +1,11 @@
--- trinity-tdelibs-3.5.13.2/kdeui/kpassivepopup.cpp.ORI 2013-02-16 23:33:04.657067698 +0100
+++ trinity-tdelibs-3.5.13.2/kdeui/kpassivepopup.cpp 2013-02-16 23:34:42.083107895 +0100
@@ -152,7 +152,7 @@
}
if ( !text.isEmpty() ) {
- msg = new TQLabel( text, vb, "msg_label" );
+ const char* m = text.latin1(); msg = new TQLabel( TQString::fromUtf8(m), vb, "msg_label" );
msg->setAlignment( AlignLeft );
}

@ -0,0 +1,33 @@
--- ./kdeprint/kmfactory.cpp.ORI 2013-05-09 00:14:51.664045869 +0200
+++ ./kdeprint/kmfactory.cpp 2013-05-09 00:16:59.154367127 +0200
@@ -249,8 +249,21 @@
conf->writeEntry("PrintSystem", sys);
conf->sync();
}
- else if ( sys.length()==1 && sys[0].isDigit() ) // discard old-style settings
+ else if ( sys.length()==1 && sys[0].isDigit() ) { // discard old-style settings
sys = "lpdunix";
+ } else {
+ //Always Autodetect
+ //it will not try autodetect if user changes any option
+ //when user force some option, AlwaysSearch will be "no" and then
+ //kprinter will not to try autodetect again.
+ if(conf->readEntry("AlwaysSearch") != "no" ) {
+ sys = autoDetect();
+ conf->writeEntry("PrintSystem",sys);
+ conf->writeEntry("AlwaysSearch","yes");
+ conf->sync();
+ }
+ }
+
return sys;
}
@@ -278,6 +291,7 @@
{
KConfig *conf = printConfig();
conf->setGroup("General");
+ conf->writeEntry("AlwaysSearch","no");
conf->writeEntry("PrintSystem", syst);
conf->sync();

@ -0,0 +1,38 @@
--- ./kio/kio/kzip.cpp.ORI 2013-05-31 23:15:23.021298550 +0200
+++ ./kio/kio/kzip.cpp 2013-05-31 23:16:43.525633640 +0200
@@ -1051,6 +1051,21 @@
return true;
}
+bool KZip::writeDir(const TQString& name, const TQString& user, const TQString& group)
+{
+ // Zip files have no explicit directories, they are implicitly created during extraction time
+ // when file entries have paths in them.
+ // However, to support empty directories, we must create a dummy file entry which ends with '/'.
+ TQString dirName = name;
+ if (!name.endsWith("/")) {
+ dirName = dirName.append('/');
+ }
+
+ mode_t perm = 040755;
+ time_t the_time = time(0);
+ return writeFile(dirName, user, group, 0, perm, the_time, the_time, the_time, 0);
+}
+
// Doesn't need to be reimplemented anymore. Remove for KDE-4.0
bool KZip::writeFile( const TQString& name, const TQString& user, const TQString& group, uint size, const char* data )
{
--- ./kio/kio/kzip.h.ORI 2013-05-31 23:18:30.829414791 +0200
+++ ./kio/kio/kzip.h 2013-05-31 23:19:10.763589109 +0200
@@ -191,10 +191,7 @@
/// Closes the archive
virtual bool closeArchive();
- /**
- * @internal Not needed for zip
- */
- virtual bool writeDir( const TQString& name, const TQString& user, const TQString& group) { Q_UNUSED(name); Q_UNUSED(user); Q_UNUSED(group); return true; }
+ virtual bool writeDir(const QString& name, const QString& user, const QString& group);
// TODO(BIC) uncomment and make virtual for KDE 4.
// bool writeDir( const TQString& name, const TQString& user, const TQString& group,
// mode_t perm, time_t atime, time_t mtime, time_t ctime );

@ -0,0 +1,150 @@
--- ./kdecore/kglobalsettings.h.Ori 2013-05-08 22:16:42.771982104 +0200
+++ ./kdecore/kglobalsettings.h 2013-05-08 22:18:33.882577602 +0200
@@ -253,6 +253,29 @@
*/
static TQString documentPath() { initStatic(); return *s_documentPath; }
+ /**
+ * The path where documents are stored of the current user.
+ * @return the path of the videos directory
+ */
+ static TQString videosPath() { initStatic(); return *s_videosPath; }
+
+ /**
+ * The path where documents are stored of the current user.
+ * @return the path of the music directory
+ */
+ static TQString musicPath() { initStatic(); return *s_musicPath; }
+
+ /**
+ * The path where documents are stored of the current user.
+ * @return the path of the downloads directory
+ */
+ static TQString downloadPath() { initStatic(); return *s_downloadPath; }
+
+ /**
+ * The path where documents are stored of the current user.
+ * @return the path of the pictures directory
+ */
+ static TQString picturesPath() { initStatic(); return *s_picturesPath; }
/**
* The default color to use when highlighting toolbar buttons.
@@ -560,6 +583,10 @@
static TQString* s_autostartPath;
static TQString* s_trashPath;
static TQString* s_documentPath;
+ static TQString* s_picturesPath;
+ static TQString* s_downloadPath;
+ static TQString* s_musicPath;
+ static TQString* s_videosPath;
static TQFont *_generalFont;
static TQFont *_fixedFont;
static TQFont *_toolBarFont;
--- ./kdecore/kglobalsettings.cpp.xdg_path 2013-01-09 19:23:09.000000000 +0100
+++ ./kdecore/kglobalsettings.cpp 2013-05-08 22:26:26.451376166 +0200
@@ -62,6 +62,10 @@
TQString* KGlobalSettings::s_autostartPath = 0;
TQString* KGlobalSettings::s_trashPath = 0;
TQString* KGlobalSettings::s_documentPath = 0;
+TQString* KGlobalSettings::s_videosPath = 0;
+TQString* KGlobalSettings::s_musicPath = 0;
+TQString* KGlobalSettings::s_downloadPath = 0;
+TQString* KGlobalSettings::s_picturesPath = 0;
TQFont *KGlobalSettings::_generalFont = 0;
TQFont *KGlobalSettings::_fixedFont = 0;
TQFont *KGlobalSettings::_toolBarFont = 0;
@@ -83,7 +87,7 @@
// helper function for reading xdg user dirs: it is required in order to take
// care of locale stuff
-void readXdgUserDirs(TQString *desktop, TQString *documents)
+void readXdgUserDirs(TQString *desktop, TQString *documents, TQString *videos, TQString *music, TQString *download, TQString *pictures)
{
TQFile f( TQDir::homeDirPath() + "/.config/user-dirs.dirs" );
@@ -101,6 +105,14 @@
*desktop = line.remove("XDG_DESKTOP_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
else if (line.startsWith("XDG_DOCUMENTS_DIR="))
*documents = line.remove("XDG_DOCUMENTS_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
+ else if (line.startsWith("XDG_MUSIC_DIR="))
+ *videos = line.remove("XDG_MUSIC_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
+ else if (line.startsWith("XDG_DOWNLOAD_DIR="))
+ *download = line.remove("XDG_DOWNLOAD_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
+ else if (line.startsWith("XDG_VIDEOS_DIR="))
+ *music = line.remove("XDG_VIDEOS_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
+ else if (line.startsWith("XDG_PICTURES_DIR="))
+ *pictures = line.remove("XDG_PICTURES_DIR=").remove("\"").replace("$HOME", TQDir::homeDirPath());
line = s.readLine();
}
@@ -515,30 +527,45 @@
s_autostartPath = new TQString();
s_trashPath = new TQString();
s_documentPath = new TQString();
+ s_videosPath = new TQString();
+ s_musicPath = new TQString();
+ s_downloadPath = new TQString();
+ s_picturesPath = new TQString();
+
KConfigGroup g( KGlobal::config(), "Paths" );
- // Read desktop and documents path using XDG_USER_DIRS
- readXdgUserDirs(s_desktopPath, s_documentPath);
+ // Read desktop and documents path using XDG_USER_DIRS
+ readXdgUserDirs(s_desktopPath, s_documentPath, s_musicPath, s_videosPath, s_downloadPath, s_picturesPath);
if (s_desktopPath->isEmpty() == true) {
*s_desktopPath = TQDir::homeDirPath() + "/Desktop/";
}
+
*s_desktopPath = TQDir::cleanDirPath( *s_desktopPath );
if ( !s_desktopPath->endsWith("/") )
s_desktopPath->append('/');
- if (s_documentPath->isEmpty() == true) {
-#ifdef Q_WS_WIN
- *s_documentPath = getWin32ShellFoldersPath("Personal");
-#else
- *s_documentPath = TQDir::homeDirPath() + "/Documents/";
-#endif
- }
*s_documentPath = TQDir::cleanDirPath( *s_documentPath );
if ( !s_documentPath->endsWith("/"))
s_documentPath->append('/');
+ *s_musicPath = TQDir::cleanDirPath( *s_musicPath );
+ if ( !s_musicPath->endsWith("/"))
+ s_musicPath->append('/');
+
+ *s_videosPath = TQDir::cleanDirPath( *s_videosPath );
+ if ( !s_videosPath->endsWith("/"))
+ s_videosPath->append('/');
+
+ *s_downloadPath = TQDir::cleanDirPath( *s_downloadPath );
+ if ( !s_downloadPath->endsWith("/"))
+ s_downloadPath->append('/');
+
+ *s_picturesPath = TQDir::cleanDirPath( *s_picturesPath );
+ if ( !s_picturesPath->endsWith("/"))
+ s_picturesPath->append('/');
+
// Trash Path - TODO remove in KDE4 (kio_trash can't use it for interoperability reasons)
*s_trashPath = *s_desktopPath + i18n("Trash") + "/";
*s_trashPath = g.readPathEntry( "Trash" , *s_trashPath);
@@ -603,6 +630,14 @@
s_desktopPath = 0L;
delete s_documentPath;
s_documentPath = 0L;
+ delete s_videosPath;
+ s_videosPath = 0L;
+ delete s_picturesPath;
+ s_picturesPath = 0L;
+ delete s_downloadPath;
+ s_downloadPath = 0L;
+ delete s_musicPath;
+ s_musicPath = 0L;
}
KGlobalSettings::KMouseSettings & KGlobalSettings::mouseSettings()

@ -0,0 +1,11 @@
--- trinity-tdemultimedia-3.5.13.2/juk/configure.in.in.ORI 2013-02-13 21:30:12.230539642 +0100
+++ trinity-tdemultimedia-3.5.13.2/juk/configure.in.in 2013-02-13 22:00:07.584173123 +0100
@@ -50,7 +50,7 @@
PKG_CONFIG_ALLOW_SYSTEM_LIBS=1
export PKG_CONFIG_ALLOW_SYSTEM_LIBS
- GST_MAJORMINOR=0.10
+ GST_MAJORMINOR=1.0
GST_REQ=0.10.0
GST_VERSION=10

@ -0,0 +1,26 @@
--- trinity-tdemultimedia-3.5.13.2~pre21+6e6307c6/kmix/kmixdockwidget.cpp.ORI 2013-05-21 23:07:46.511834317 +0200
+++ trinity-tdemultimedia-3.5.13.2~pre21+6e6307c6/kmix/kmixdockwidget.cpp 2013-05-21 23:07:04.202716141 +0200
@@ -109,6 +109,7 @@
_oldToolTipValue = -1;
_oldPixmapType = '-';
+/*
if (m_mixer == 0) {
// In case that there is no mixer installed, there will be no newVolumeLevels() signal's
// Thus we prepare the dock areas manually
@@ -116,6 +117,7 @@
updatePixmap(false);
return;
}
+*/
// create devices
_dockAreaPopup = new ViewDockAreaPopup(0, "dockArea", m_mixer, 0, this);
@@ -376,7 +378,6 @@
if ( md != 0 ) {
md->setMuted( !md->isMuted() );
m_mixer->commitVolumeChange( md );
- updatePixmap(false);
}
}
}

@ -0,0 +1,11 @@
--- trinity-tdemultimedia-3.5.13.2~pre17+a4c1404c/arts/modules/common/Makefile.am.ORI 2013-05-09 10:51:39.994294437 +0200
+++ trinity-tdemultimedia-3.5.13.2~pre17+a4c1404c/arts/modules/common/Makefile.am 2013-05-09 10:52:23.837409361 +0200
@@ -25,7 +25,7 @@
$(top_builddir)/arts/gui/common/libartsgui_idl.la \
$(top_builddir)/arts/midi/libartsmidi_idl.la \
$(top_builddir)/arts/modules/synth/libartsmodulessynth.la \
- -lartsflow -lartsflow_idl -lmcop $(LIB_KDECORE) $(LIB_QT) $(VORBISFILE_LIBS) -lgthread-2.0
+ -lartsflow -lartsflow_idl -lmcop $(LIB_KDECORE) $(LIB_QT) $(VORBIS_LIBS) $(VORBISFILE_LIBS) -lgthread-2.0 -lmad
libartsmodulescommon_la_LDFLAGS = $(all_libraries) -L$(arts_libraries) -no-undefined

@ -0,0 +1,35 @@
--- trinity-tdenetwork-3.5.13.2/kopete/plugins/motionautoaway/motionawayplugin.cpp.ORI 2013-06-17 19:40:31.327502606 +0200
+++ trinity-tdenetwork-3.5.13.2/kopete/plugins/motionautoaway/motionawayplugin.cpp 2013-06-17 19:43:02.745097904 +0200
@@ -44,32 +44,6 @@
#include "kopeteaccountmanager.h"
#include "kopeteaway.h"
-/* The following is a hack:
- * e.g. Mandrake 9.x ships with a patched
- * kernel which doesn't define this 64 bit types (we need GNU C lib
- * because we use long long and warning - gcc extensions.)
- *
- * This is caused by the !defined(__STRICT_ANSI__) check in
- * /usr/include/asm/types.h
- */
-#if !defined(__u64) && defined(__GNUC__)
-#if SIZEOF_UNSIGNED_LONG >= 8
-typedef unsigned long __u64;
-#else
-typedef unsigned long long __u64;
-#endif
-#endif
-
-#if !defined(__s64) && defined(__GNUC__)
-#if SIZEOF_LONG >= 8
-typedef signed long __s64;
-#else
-typedef __signed__ long long __s64;
-#endif
-#endif
-/*
- * End hack
- */
#include <linux/version.h>
#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,5,50)

@ -0,0 +1,251 @@
--- trinity-tdepim-3.5.13.2~pre23+6c74b892/kmail/CMakeLists.txt.ORI 2013-05-25 17:07:04.113241481 +0200
+++ trinity-tdepim-3.5.13.2~pre23+6c74b892/kmail/CMakeLists.txt 2013-05-25 17:09:01.115862006 +0200
@@ -178,7 +178,7 @@
localsubscriptiondialog.cpp editorwatcher.cpp favoritefolderview.cpp
foldertreebase.cpp snippetdlgbase.ui snippetwidget.cpp snippetconfig.cpp
snippetdlg.cpp snippetitem.cpp snippetsettings.cpp snippetsettingsbase.ui
- messageactions.cpp korghelper.cpp foldersetselector.cpp stringutil.cpp
+ messageactions.cpp korghelper.cpp kmnetworkmonitor.cpp foldersetselector.cpp stringutil.cpp
treebase.cpp backupjob.cpp importjob.cpp folderutil.cpp archivefolderdialog.cpp
importarchivedialog.cpp ${CMAKE_SOURCE_DIR}/korganizer/kcalendariface.stub
${CMAKE_SOURCE_DIR}/korganizer/korganizeriface.stub )
@@ -192,7 +192,7 @@
SOURCES ${${target}_SRCS}
LINK
emailfunctions-static kmime-shared kpgp-shared kdepim-shared kpimidentities-shared
- mimelib-shared ksieve-shared khtml-shared ${INDEX_LIBRARY}
+ mimelib-shared ksieve-shared khtml-shared kdedbus-shared ${INDEX_LIBRARY}
DESTINATION ${LIB_INSTALL_DIR}
)
--- trinity-tdepim-3.5.13.2~pre23+6c74b892/kmail/kmkernel.cpp.ORI 2013-05-25 17:10:26.899117831 +0200
+++ trinity-tdepim-3.5.13.2~pre23+6c74b892/kmail/kmkernel.cpp 2013-05-25 17:12:30.471605868 +0200
@@ -72,6 +72,7 @@
#include <kwallet.h>
using KWallet::Wallet;
#include "actionscheduler.h"
+#include "kmnetworkmonitor.h"
#include <qutf7codec.h>
#include <tqvbox.h>
@@ -169,6 +170,9 @@
connectDCOPSignal( 0, 0, "kmailSelectFolder(TQString)",
"selectFolder(TQString)", false );
+
+ networkMonitor = new KMNetworkMonitor(this, "KMNetworkMonitor");
+ connect(networkMonitor, TQT_SIGNAL(stateChanged(bool)), TQT_SLOT(slotNetworkStateChanged(bool)));
}
KMKernel::~KMKernel ()
@@ -2056,6 +2060,15 @@
mPutJobs.remove(it);
}
+void KMKernel::slotNetworkStateChanged(bool state)
+{
+ if(state) {
+ resumeNetworkJobs();
+ } else {
+ stopNetworkJobs();
+ }
+}
+
void KMKernel::slotRequestConfigSync() {
// ### FIXME: delay as promised in the kdoc of this function ;-)
KMKernel::config()->sync();
--- trinity-tdepim-3.5.13.2~pre23+6c74b892/kmail/kmkernel.h.ORI 2013-05-25 17:13:53.309922294 +0200
+++ trinity-tdepim-3.5.13.2~pre23+6c74b892/kmail/kmkernel.h 2013-05-25 17:15:29.587965912 +0200
@@ -28,6 +28,8 @@
class Wallet;
}
+class KMNetworkMonitor;
+
/** The KMail namespace contains classes used for KMail.
* This is to keep them out of the way from all the other
* un-namespaced classes in libs and the rest of PIM.
@@ -434,6 +436,7 @@
protected slots:
void slotDataReq(KIO::Job*,TQByteArray&);
void slotResult(KIO::Job*);
+ void slotNetworkStateChanged(bool);
signals:
void configChanged();
@@ -517,6 +520,8 @@
KPIM::ThreadWeaver::WeaverThreadLogger *the_weaverLogger;
KWallet::Wallet *mWallet;
+
+ KMNetworkMonitor *networkMonitor;
// variables used by dcopAddMessage()
TQStringList mAddMessageMsgIds;
--- /dev/null 2013-05-25 09:16:59.792134055 +0200
+++ trinity-tdepim-3.5.13.2~pre23+6c74b892/kmail/kmnetworkmonitor.h 2013-05-25 17:20:02.351394952 +0200
@@ -0,0 +1,45 @@
+/*
+ This file is part of the KDE3 Fork Project
+ Copyright (c) 2013 Serghei Amelian <serghei.amelian@gmail.com>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License version 2 as published by the Free Software Foundation.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+#ifndef _KMNETWORKMONITOR_H_
+#define _KMNETWORKMONITOR_H_
+
+#include <tqobject.h>
+
+class KMNetworkMonitorPrivate;
+
+
+class KMNetworkMonitor : public TQObject {
+
+ TQ_OBJECT
+
+ friend class KMNetworkMonitorPrivate;
+
+public:
+ KMNetworkMonitor(TQObject *parent = 0, const char *name = 0);
+ ~KMNetworkMonitor();
+
+signals:
+ void stateChanged(bool);
+
+private:
+ KMNetworkMonitorPrivate *d;
+};
+
+
+#endif
--- /dev/null 2013-05-25 09:16:59.792134055 +0200
+++ trinity-tdepim-3.5.13.2~pre23+6c74b892/kmail/kmnetworkmonitor.cpp 2013-05-25 17:21:55.565054211 +0200
@@ -0,0 +1,116 @@
+/*
+ This file is part of the KDE3 Fork Project
+ Copyright (c) 2013 Serghei Amelian <serghei.amelian@gmail.com>
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License version 2 as published by the Free Software Foundation.
+
+ This library 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
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#include <TQTime.h>
+
+#include <dbus/TQDBusConnection.h>
+#include <dbus/qdbuserror.h>
+#include <dbus/TQDBusMessage.h>
+#include <dbus/qdbusproxy.h>
+
+#include <kdebug.h>
+
+#include "kmnetworkmonitor.h"
+
+
+class KMNetworkMonitorPrivate : public TQDBusProxy {
+
+ TQ_OBJECT
+
+public:
+ KMNetworkMonitorPrivate(KMNetworkMonitor *parent)
+ : TQDBusProxy(parent, "KMNetworkMonitorPrivate"), lastStatus(-1)
+ {
+ setService("org.freedesktop.NetworkManager");
+ setPath("/org/freedesktop/NetworkManager");
+ setInterface("org.freedesktop.NetworkManager");
+
+ TQTime::singleShot(0, this, TQT_SLOT(initialize()));
+ }
+
+protected slots:
+ void initialize()
+ {
+ // connect to DBUS
+ TQDBusConnection dbus = TQDBusConnection::systemBus();
+ if(!dbus.isConnected()) {
+ kdDebug() << "Unable to connect to DBus: " << dbus.lastError().message() << endl;
+ return;
+ }
+ setConnection(dbus);
+
+ // check for current status
+ int rc = sendWithAsyncReply("state", TQValueList<TQDBusData>());
+ if(0 == rc) {
+ kdDebug() << "Unable to send \"state\" command to DBus" << endl;
+ return;
+ }
+ }
+
+ void handleDBusSignal(const TQDBusMessage &message)
+ {
+ // the message is for us
+ if(path() == message.path() && interface() == message.interface() && "StateChanged" == message.member())
+ handleMessage(message);
+ }
+
+ void handleAsyncReply(const TQDBusMessage &message)
+ {
+ handleMessage(message);
+ }
+
+ void handleMessage(const TQDBusMessage &message)
+ {
+ bool ok;
+ TQ_UINT32 state = message[0].toUInt32(&ok);
+
+ if(!ok) {
+ kdDebug() << "KMNetworkMonitor: received unexpected type for state (" << message[0].typeName() << ")" << endl;
+ return;
+ }
+
+ int currStatus = (50 < state ? 1 : 0);
+
+ if(lastStatus != currStatus) {
+ emit static_cast<KMNetworkMonitor*>(parent())->stateChanged(1 == currStatus);
+ lastStatus = currStatus;
+ }
+ }
+
+private:
+ // -1 = unitialized, 0 = offline, 1 = online
+ int lastStatus;
+};
+
+
+KMNetworkMonitor::KMNetworkMonitor(TQObject *parent, const char *name)
+ : TQObject(parent, name)
+{
+ d = new KMNetworkMonitorPrivate(this);
+}
+
+
+KMNetworkMonitor::~KMNetworkMonitor()
+{
+ delete d;
+}
+
+
+#include "kmnetworkmonitor.moc"
+#include "kmnetworkmonitor.cpp.moc"

@ -0,0 +1,11 @@
--- trinity-tdeutils-3.5.13.2/ConfigureChecks.cmake.rhel4 2013-01-09 02:43:16.000000000 +0100
+++ trinity-tdeutils-3.5.13.2/ConfigureChecks.cmake 2013-03-10 16:25:27.108634832 +0100
@@ -109,8 +107,6 @@
set( CMAKE_REQUIRED_LIBRARIES )
set( HAVE_DPMS 1 )
endif( WITH_DPMS )
- else( XEXT_FOUND )
- tde_message_fatal( "libXext is requested, but was not found on your system" )
endif( XEXT_FOUND )
endif( )
Loading…
Cancel
Save