[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