/[packages]/cauldron/kdepim4/current/SOURCES/kdepim-4.2.95-kmail-first-message.patch
ViewVC logotype

Contents of /cauldron/kdepim4/current/SOURCES/kdepim-4.2.95-kmail-first-message.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1436 - (show annotations) (download)
Sat Jan 8 23:30:56 2011 UTC (13 years, 3 months ago) by dmorgan
File size: 3367 byte(s)
imported package kdepim4
1 Index: kmail/kmkernel.cpp
2 ===================================================================
3 --- kmail/kmkernel.cpp
4 +++ kmail/kmkernel.cpp 2009-06-26 23:24:34.000000000 +0200
5 @@ -1307,7 +1307,7 @@
6 }
7
8 //-----------------------------------------------------------------------------
9 -void KMKernel::initFolders(KConfig* cfg)
10 +void KMKernel::initFolders(KConfig* cfg, bool _firstMessage)
11 {
12 QString name;
13 KConfigGroup group(cfg,"General");
14 @@ -1318,7 +1318,8 @@
15 // in the base folder directory.
16 //if (name.isEmpty()) name = getenv("MAIL");
17
18 - if (name.isEmpty()) name = I18N_NOOP("inbox");
19 + bool inboxIsEmpty = name.isEmpty();
20 + if (inboxIsEmpty) name = I18N_NOOP("inbox");
21
22 the_inboxFolder = (KMFolder*)the_folderMgr->findOrCreate(name);
23
24 @@ -1326,6 +1327,7 @@
25 emergencyExit( i18n("You do not have read/write permission to your inbox folder.") );
26 }
27
28 + if (_firstMessage) dbusAddMessage(name, firstMessage());
29 the_inboxFolder->setSystemFolder(true);
30 if ( the_inboxFolder->userWhoField().isEmpty() )
31 the_inboxFolder->setUserWhoField( QString() );
32 @@ -1439,6 +1441,9 @@
33 // moved up here because KMMessage::stripOffPrefixes is used below
34 KMMessage::readConfig();
35
36 + QDir dirMail = QDir::home();
37 + bool _firstMessage = the_firstStart && !QFile("/etc/sysconfig/oem").exists();
38 +
39 the_undoStack = new UndoStack(20);
40 the_folderMgr = new KMFolderMgr(foldersPath);
41 the_imapFolderMgr = new KMFolderMgr( KMFolderImap::cacheLocation(), KMImapDir);
42 @@ -1454,7 +1459,7 @@
43 the_popFilterMgr = new KMFilterMgr(true);
44 the_filterActionDict = new KMFilterActionDict;
45
46 - initFolders(cfg);
47 + initFolders(cfg,_firstMessage);
48 the_acctMgr->readConfig();
49 the_filterMgr->readConfig();
50 the_popFilterMgr->readConfig();
51 @@ -1493,6 +1498,32 @@
52 #endif
53 }
54
55 +
56 +QString KMKernel::firstMessage()
57 +{
58 + QString first( "/usr/share/mdk/mail/text/mail-%1" );
59 + QString language = QString::fromLocal8Bit(getenv("LANGUAGE")) ;
60 + QStringList langList = language.split(":");
61 + bool languageFound = false;
62 + for ( QStringList::Iterator it = langList.begin(); it != langList.end(); ++it )
63 + {
64 + QString tmpFile = first.arg(*it);
65 + if( QFile::exists(tmpFile))
66 + {
67 + first = tmpFile;
68 + languageFound = true;
69 + break;
70 + }
71 + }
72 + if ( !languageFound )
73 + {
74 + first = QString("/usr/share/mdk/mail/text/mail-en" );
75 + if( !QFile::exists(first))
76 + first="";
77 + }
78 + return first;
79 +}
80 +
81 void KMKernel::readConfig()
82 {
83 //Needed here, since this function is also called when the configuration
84 Index: kmail/kmkernel.h
85 ===================================================================
86 --- kmail/kmkernel.h
87 +++ kmail/kmkernel.h 2009-06-26 23:18:42.000000000 +0200
88 @@ -265,7 +265,7 @@
89 void cleanupImapFolders();
90 void testDir(const char *_name);
91 void recoverDeadLetters();
92 - void initFolders(KConfig* cfg);
93 + void initFolders(KConfig* cfg, bool _firstMessage = false);
94 void closeAllKMailWindows();
95 void cleanup(void);
96 void quit();
97 @@ -323,6 +323,8 @@
98 /** return the pointer to the identity manager */
99 KPIMIdentities::IdentityManager *identityManager();
100
101 + QString firstMessage();
102 +
103 JobScheduler* jobScheduler() { return mJobScheduler; }
104
105 /** Expire all folders, used for the gui action */

  ViewVC Help
Powered by ViewVC 1.1.30