summaryrefslogtreecommitdiff
authorspiralman <spiralman>2003-03-15 16:00:23 (UTC)
committer spiralman <spiralman>2003-03-15 16:00:23 (UTC)
commitede78d4ab60d2c78427c4b1cc51cd9accc0aed1c (patch) (unidiff)
treea1623ce4aad6b61e121e4e6fdbfe45b9ec38173f
parent90c05874265e7047c0ca933a43c433eb0d7f04e4 (diff)
downloadopie-ede78d4ab60d2c78427c4b1cc51cd9accc0aed1c.zip
opie-ede78d4ab60d2c78427c4b1cc51cd9accc0aed1c.tar.gz
opie-ede78d4ab60d2c78427c4b1cc51cd9accc0aed1c.tar.bz2
added code to force QTextBrowser to parse input as html if http header claims thats what it is (it was having problems autodetecting on certain pages)
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/ubrowser/httpfactory.cpp5
-rw-r--r--noncore/net/ubrowser/httpfactory.h4
2 files changed, 7 insertions, 2 deletions
diff --git a/noncore/net/ubrowser/httpfactory.cpp b/noncore/net/ubrowser/httpfactory.cpp
index 0586e96..4ace4cb 100644
--- a/noncore/net/ubrowser/httpfactory.cpp
+++ b/noncore/net/ubrowser/httpfactory.cpp
@@ -214,24 +214,29 @@ const QByteArray HttpFactory::processResponse( int sockfd, bool &isText ) const
214 } 214 }
215 215
216 if( currentLine.contains( "Transfer-Encoding: chunked", false) >= 1 ) 216 if( currentLine.contains( "Transfer-Encoding: chunked", false) >= 1 )
217 { 217 {
218 chunked = true; 218 chunked = true;
219 printf( "HttpFactory::processResponse: chunked encoding\n" ); 219 printf( "HttpFactory::processResponse: chunked encoding\n" );
220 } 220 }
221 221
222 if( currentLine.contains( "Content-Type: text", false ) >= 1 ) 222 if( currentLine.contains( "Content-Type: text", false ) >= 1 )
223 { 223 {
224 isText = true; 224 isText = true;
225 printf( "HttpFactory::processResponse: content type text\n" ); 225 printf( "HttpFactory::processResponse: content type text\n" );
226 if( currentLine.contains( "html", false ) )
227 {
228 browser->setTextFormat(Qt::RichText);
229 printf( "HttpFactory::processResponse: content type html\n" );
230 }
226 } 231 }
227 232
228 if( currentLine.contains( "Content-Type: image", false ) >= 1 ) 233 if( currentLine.contains( "Content-Type: image", false ) >= 1 )
229 { 234 {
230 isText = false; 235 isText = false;
231 printf( "HttpFactory::processResponse: content type image\n" ); 236 printf( "HttpFactory::processResponse: content type image\n" );
232 } 237 }
233 238
234 if( currentLine.contains( "Content-Length", false ) >= 1 ) 239 if( currentLine.contains( "Content-Length", false ) >= 1 )
235 { 240 {
236 currentLine.remove( 0, 16 ); 241 currentLine.remove( 0, 16 );
237 dataLength = currentLine.toInt(); 242 dataLength = currentLine.toInt();
diff --git a/noncore/net/ubrowser/httpfactory.h b/noncore/net/ubrowser/httpfactory.h
index 214120c..ec59ebb 100644
--- a/noncore/net/ubrowser/httpfactory.h
+++ b/noncore/net/ubrowser/httpfactory.h
@@ -21,31 +21,31 @@ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21#include <qtextbrowser.h> 21#include <qtextbrowser.h>
22#include <qmessagebox.h> 22#include <qmessagebox.h>
23 23
24#include <stdio.h> 24#include <stdio.h>
25 25
26#include <sys/types.h> 26#include <sys/types.h>
27#include <sys/socket.h> 27#include <sys/socket.h>
28#include <unistd.h> 28#include <unistd.h>
29#include <netinet/in.h> 29#include <netinet/in.h>
30#include <netdb.h> 30#include <netdb.h>
31#include <arpa/inet.h> 31#include <arpa/inet.h>
32 32
33#include "httpcomm.h" 33//#include "httpcomm.h"
34 34
35class HttpFactory : public QMimeSourceFactory 35class HttpFactory : public QMimeSourceFactory
36{ 36{
37public: 37public:
38 HttpFactory(QTextBrowser *newBrowser); 38 HttpFactory(QTextBrowser *newBrowser);
39 const QMimeSource * data(const QString &abs_name) const; 39 const QMimeSource * data(const QString &abs_name) const;
40 const QMimeSource * data(const QString &abs_or_rel_name, const QString & context) const; 40 const QMimeSource * data(const QString &abs_or_rel_name, const QString & context) const;
41private: 41private:
42 //QSocket *socket; 42 //QSocket *socket;
43 HttpComm *comm; 43 //HttpComm *comm;
44 QTextDrag *text; 44 QTextDrag *text;
45 QImageDrag *image; 45 QImageDrag *image;
46 QTextBrowser *browser; 46 QTextBrowser *browser;
47 47
48 const QByteArray processResponse( int sockfd, bool &isText) const; 48 const QByteArray processResponse( int sockfd, bool &isText) const;
49 const QByteArray recieveNormal( int sockfd, int dataLen ) const; 49 const QByteArray recieveNormal( int sockfd, int dataLen ) const;
50 const QByteArray recieveChunked( int sockfd ) const; 50 const QByteArray recieveChunked( int sockfd ) const;
51}; 51};