[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-core-devel
Subject: Fwd: [PATCH] configurable discouragement of emailing authors bugs
From: David Faure <faure () kde ! org>
Date: 2005-02-15 13:44:59
Message-ID: 200502151444.59856.faure () kde ! org
[Download RAW message or body]
What do you think? Can we maybe come up with a better sentence, or is it
better to have it configurable per application since authors might indeed feel
differently about it?
--
David Faure, faure@kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).
["forwarded message" (message/rfc822)]
Hi,
I wasn't a big fan of kdelibs/kdecore/kcmdlineargs.cpp:1.72 but it didn't
really matter since it was a cmdline option, not used from the GUI.
But more recently, kdelibs/kdeui/kaboutapplication.cpp:1.18, adds a very
prominent notice that IMHO, scares away users by implying that KDE is not a
friendly community if you email people directly. Personally, I don't mind
receiving bug reports via email - forcing users to login at
http://bugs.kde.org/ to report bugs only reduces the amount of feedback you
get simply because users are lazy. In any case, if you don't want to be
contacted via email, then why put an email address in KAboutData in the first
place?
But you might not agree so could we please make this configurable on a
per-app/maintainer basis? See attached patch. Note that it defaults to off
because I'm biased - I would be OK with changing it to on by default though.
Thanks,
Clarence
["kaboutdata-email_authors_bugs.diff" (text/x-diff)]
Index: kdecore/kaboutdata.cpp
===================================================================
RCS file: /home/kde/kdelibs/kdecore/kaboutdata.cpp,v
retrieving revision 1.24
diff -u -p -r1.24 kaboutdata.cpp
--- kdecore/kaboutdata.cpp 31 Dec 2004 16:21:12 -0000 1.24
+++ kdecore/kaboutdata.cpp 15 Feb 2005 10:37:37 -0000
@@ -79,6 +79,7 @@ public:
, translatorEmail("_: EMAIL OF TRANSLATORS\nYour emails")
, productName(0)
, programLogo(0)
+ , discourageEmailingAuthorsBugs(false)
{}
~KAboutDataPrivate()
{
@@ -88,6 +89,7 @@ public:
const char *translatorEmail;
const char *productName;
QImage* programLogo;
+ bool discourageEmailingAuthorsBugs;
};
@@ -444,3 +446,16 @@ KAboutData::copyrightStatement() const
else
return QString::null;
}
+
+bool
+KAboutData::discourageEmailingAuthorsBugs() const
+{
+ return d->discourageEmailingAuthorsBugs;
+}
+
+void
+KAboutData::setDiscourageEmailingAuthorsBugs( bool yes )
+{
+ d->discourageEmailingAuthorsBugs = yes;
+}
+
Index: kdecore/kaboutdata.h
===================================================================
RCS file: /home/kde/kdelibs/kdecore/kaboutdata.h,v
retrieving revision 1.41
diff -u -p -r1.41 kaboutdata.h
--- kdecore/kaboutdata.h 13 Oct 2004 13:03:41 -0000 1.41
+++ kdecore/kaboutdata.h 15 Feb 2005 10:37:39 -0000
@@ -540,6 +540,25 @@ class KDECORE_EXPORT KAboutData
*/
QString copyrightStatement() const;
+ /**
+ * Returns whether to display a message telling users not to email bugs
+ * to authors directly, whenever the authors (and their email addresses)
+ * are displayed.
+ *
+ * @return whether to display a message telling users not to email bugs
+ * to authors directly.
+ */
+ bool discourageEmailingAuthorsBugs() const;
+
+ /**
+ * Sets whether to display a message telling users not to email bugs
+ * to authors directly, whenever the authors (and their email addresses)
+ * are displayed.
+ *
+ * @param yes Whether such a message should be displayed.
+ */
+ void setDiscourageEmailingAuthorsBugs( bool yes );
+
private:
const char *mAppName;
const char *mProgramName;
Index: kdecore/kcmdlineargs.cpp
===================================================================
RCS file: /home/kde/kdelibs/kdecore/kcmdlineargs.cpp,v
retrieving revision 1.98
diff -u -p -r1.98 kcmdlineargs.cpp
--- kdecore/kcmdlineargs.cpp 27 Jan 2005 12:01:36 -0000 1.98
+++ kdecore/kcmdlineargs.cpp 15 Feb 2005 10:37:41 -0000
@@ -608,7 +608,7 @@ KCmdLineArgs::parseAllArgs()
} else {
printQ( i18n("%1 was written by somebody who wants to remain \
anonymous.").arg(about->programName()) ); }
- if (!about->bugAddress().isEmpty())
+ if (about && about->discourageEmailingAuthorsBugs() && \
!about->bugAddress().isEmpty()) {
if (about->bugAddress() == "submit@bugs.kde.org")
printQ( i18n( "Please use http://bugs.kde.org to report bugs, do not mail the \
authors directly.\n" ) );
Index: kdeui/kaboutapplication.cpp
===================================================================
RCS file: /home/kde/kdelibs/kdeui/kaboutapplication.cpp,v
retrieving revision 1.20
diff -u -p -r1.20 kaboutapplication.cpp
--- kdeui/kaboutapplication.cpp 27 Dec 2004 00:00:08 -0000 1.20
+++ kdeui/kaboutapplication.cpp 15 Feb 2005 10:37:47 -0000
@@ -105,12 +105,15 @@ void KAboutApplication::buildDialog( con
i18n("A&uthor") : i18n("A&uthors");
KAboutContainer *authorPage = addScrolledContainerPage( authorPageTitle );
- KActiveLabel* activeLabel = new KActiveLabel( authorPage );
- if (aboutData->bugAddress().isEmpty() || aboutData->bugAddress() == \
"submit@bugs.kde.org")
- activeLabel->setText( i18n( "Please use <a \
href=\"http://bugs.kde.org\">http://bugs.kde.org</a> to report bugs, do not mail the \
authors directly." ) );
- else
- activeLabel->setText( i18n( "Please use <a href=\"mailto:%1\">%1</a> to \
report bugs, do not mail the authors directly.\n" \
).arg(aboutData->bugAddress()).arg(aboutData->bugAddress()) );
- authorPage->addWidget( activeLabel );
+ if (aboutData->discourageEmailingAuthorsBugs())
+ {
+ KActiveLabel* activeLabel = new KActiveLabel( authorPage );
+ if (aboutData->bugAddress().isEmpty() || aboutData->bugAddress() == \
"submit@bugs.kde.org") + activeLabel->setText( i18n( "Please use <a \
href=\"http://bugs.kde.org\">http://bugs.kde.org</a> to report bugs, do not mail the \
authors directly." ) ); + else
+ activeLabel->setText( i18n( "Please use <a href=\"mailto:%1\">%1</a> to \
report bugs, do not mail the authors directly.\n" \
).arg(aboutData->bugAddress()).arg(aboutData->bugAddress()) ); + \
authorPage->addWidget( activeLabel ); + }
QValueList<KAboutPerson>::ConstIterator it;
for (it = aboutData->authors().begin();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic