[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kdelibs/KDE/4.8] khtml: Use the javascript policy settings from the new KParts' HtmlSettingsInterfa
From:       Dawit Alemayehu <adawit () kde ! org>
Date:       2012-04-30 23:45:45
Message-ID: 20120430234545.2ACC4A60A9 () git ! kde ! org
[Download RAW message or body]

Git commit 8766414fe43eb7c2df9af0ac2e4bf78d4e7558dc by Dawit Alemayehu.
Committed on 17/03/2012 at 19:23.
Pushed by adawit into branch 'KDE/4.8'.

Use the javascript policy settings from the new KParts' HtmlSettingsInterface.
Mark the now duplicated enums for removal in KDE 5.

REVIEW: 104784

M  +6    -41   khtml/khtml_settings.cpp
M  +24   -19   khtml/khtml_settings.h

http://commits.kde.org/kdelibs/8766414fe43eb7c2df9af0ac2e4bf78d4e7558dc

diff --git a/khtml/khtml_settings.cpp b/khtml/khtml_settings.cpp
index bbe1bb4..b5693b4 100644
--- a/khtml/khtml_settings.cpp
+++ b/khtml/khtml_settings.cpp
@@ -219,57 +219,22 @@ static KPerDomainSettings &setup_per_domain_policy(
 
 KHTMLSettings::KJavaScriptAdvice KHTMLSettings::strToAdvice(const QString& _str)
 {
-  KJavaScriptAdvice ret = KJavaScriptDunno;
-
-  if (_str.isNull())
-        ret = KJavaScriptDunno;
-
-  if (_str.toLower() == QLatin1String("accept"))
-        ret = KJavaScriptAccept;
-  else if (_str.toLower() == QLatin1String("reject"))
-        ret = KJavaScriptReject;
-
-  return ret;
+    return static_cast<KJavaScriptAdvice>(KParts::HtmlSettingsInterface::textToJavascriptAdvice(_str));
  }
 
 const char* KHTMLSettings::adviceToStr(KJavaScriptAdvice _advice)
 {
-    switch( _advice ) {
-    case KJavaScriptAccept: return I18N_NOOP("Accept");
-    case KJavaScriptReject: return I18N_NOOP("Reject");
-    default: return 0;
-    }
-        return 0;
+    return KParts::HtmlSettingsInterface::javascriptAdviceToText(static_cast<KParts::HtmlSettingsInterface::JavaScriptAdvice>(_advice));
  }
 
 
 void KHTMLSettings::splitDomainAdvice(const QString& configStr, QString &domain,
                                       KJavaScriptAdvice &javaAdvice, \
KJavaScriptAdvice& javaScriptAdvice)  {
-    QString tmp(configStr);
-    int splitIndex = tmp.indexOf(':');
-    if ( splitIndex == -1)
-    {
-        domain = configStr.toLower();
-        javaAdvice = KJavaScriptDunno;
-        javaScriptAdvice = KJavaScriptDunno;
-    }
-    else
-    {
-        domain = tmp.left(splitIndex).toLower();
-        QString adviceString = tmp.mid( splitIndex+1, tmp.length() );
-        int splitIndex2 = adviceString.indexOf( ':' );
-        if( splitIndex2 == -1 ) {
-            // Java advice only
-            javaAdvice = strToAdvice( adviceString );
-            javaScriptAdvice = KJavaScriptDunno;
-        } else {
-            // Java and JavaScript advice
-            javaAdvice = strToAdvice( adviceString.left( splitIndex2 ) );
-            javaScriptAdvice = strToAdvice( adviceString.mid( splitIndex2+1,
-                                                              adviceString.length() \
                ) );
-        }
-    }
+    KParts::HtmlSettingsInterface::JavaScriptAdvice jAdvice, jsAdvice;
+    KParts::HtmlSettingsInterface::splitDomainAdvice(configStr, domain, jAdvice, \
jsAdvice); +    javaAdvice = static_cast<KJavaScriptAdvice>(jAdvice);
+    javaScriptAdvice = static_cast<KJavaScriptAdvice>(jsAdvice);
 }
 
 void KHTMLSettings::readDomainSettings(const KConfigGroup &config, bool reset,
diff --git a/khtml/khtml_settings.h b/khtml/khtml_settings.h
index e678e74..0faec6d 100644
--- a/khtml/khtml_settings.h
+++ b/khtml/khtml_settings.h
@@ -24,6 +24,7 @@ class KConfig;
 class KConfigGroup;
 
 #include <khtml_export.h>
+#include <kparts/htmlextension.h>
 
 #include <QtGui/QColor>
 #include <QtGui/QFont> // ### KDE 5: remove
@@ -44,7 +45,7 @@ public:
     /**
      * This enum specifies whether Java/JavaScript execution is allowed.
      */
-    enum KJavaScriptAdvice {
+    enum KJavaScriptAdvice {  // ### KDE 5: Remove. Use \
KParts::HtmlSettingsInterface::JavaScriptAdvice instead  KJavaScriptDunno=0,
 	KJavaScriptAccept,
 	KJavaScriptReject
@@ -71,43 +72,43 @@ public:
     /**
      * This enum specifies the policy for window.open
      */
-    enum KJSWindowOpenPolicy {
-    	KJSWindowOpenAllow=0,
-    	KJSWindowOpenAsk,
-    	KJSWindowOpenDeny,
-    	KJSWindowOpenSmart
+    enum KJSWindowOpenPolicy { // ### KDE 5: Remove. Use \
KParts::HtmlSettingsInterface::JSWindowOpenPolicy instead. +        \
KJSWindowOpenAllow=0, +        KJSWindowOpenAsk,
+        KJSWindowOpenDeny,
+        KJSWindowOpenSmart
     };
 
     /**
      * This enum specifies the policy for window.status and .defaultStatus
      */
-    enum KJSWindowStatusPolicy {
-    	KJSWindowStatusAllow=0,
-    	KJSWindowStatusIgnore
+    enum KJSWindowStatusPolicy { // ### KDE 5: Remove. Use \
KParts::HtmlSettingsInterface::JSWindowStatusPolicy instead. +        \
KJSWindowStatusAllow=0, +        KJSWindowStatusIgnore
     };
 
     /**
      * This enum specifies the policy for window.moveBy and .moveTo
      */
-    enum KJSWindowMovePolicy {
-    	KJSWindowMoveAllow=0,
-    	KJSWindowMoveIgnore
+    enum KJSWindowMovePolicy { // ### KDE 5: Remove. Use \
KParts::HtmlSettingsInterface::JSWindowMovePolicy instead. +        \
KJSWindowMoveAllow=0, +        KJSWindowMoveIgnore
     };
 
     /**
      * This enum specifies the policy for window.resizeBy and .resizeTo
      */
-    enum KJSWindowResizePolicy {
-    	KJSWindowResizeAllow=0,
-    	KJSWindowResizeIgnore
+    enum KJSWindowResizePolicy { // ### KDE 5: Remove. Use \
KParts::HtmlSettingsInterface::JSWindowStatusPolicy insead. +        \
KJSWindowResizeAllow=0, +        KJSWindowResizeIgnore
     };
 
     /**
      * This enum specifies the policy for window.focus
      */
-    enum KJSWindowFocusPolicy {
-    	KJSWindowFocusAllow=0,
-    	KJSWindowFocusIgnore
+    enum KJSWindowFocusPolicy { // ### KDE 5: Remove. Use \
KParts::HtmlSettingsInterface::JSWindowStatusPolicy instead. +        \
KJSWindowFocusAllow=0, +        KJSWindowFocusIgnore
     };
 
     /**
@@ -211,6 +212,7 @@ public:
     // Access Keys
     bool accessKeysEnabled() const;
 
+    // ### KDE 5: Replace KJSWindowOpenPolicy with \
                KParts::HtmlSettingsInterface::JSWindowOpenPolicy
     KJSWindowOpenPolicy windowOpenPolicy( const QString& hostname = QString() ) \
                const;
     KJSWindowMovePolicy windowMovePolicy( const QString& hostname = QString() ) \
                const;
     KJSWindowResizePolicy windowResizePolicy( const QString& hostname = QString() ) \
const; @@ -218,9 +220,12 @@ public:
     KJSWindowFocusPolicy windowFocusPolicy( const QString& hostname = QString() ) \
const;  
     // helpers for parsing domain-specific configuration, used in KControl module as \
well +    // ### KDE 5: Replace KJavaScriptAdvice with \
KParts::HtmlSettingsInterface::JavaScriptAdvice. +    // ### KDE 5: Remove ? \
Equivalent functions now exist in KParts::HtmlSettingsInterface.  static \
                KJavaScriptAdvice strToAdvice(const QString& _str);
     static void splitDomainAdvice(const QString& configStr, QString &domain,
-				  KJavaScriptAdvice &javaAdvice, KJavaScriptAdvice& javaScriptAdvice);
+                                  KJavaScriptAdvice &javaAdvice,
+                                  KJavaScriptAdvice& javaScriptAdvice);
     static const char* adviceToStr(KJavaScriptAdvice _advice);
 
     /** reads from @p config's current group, forcing initialization


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic