Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@tomeuvizoso.net>2006-11-10 13:14:15 (GMT)
committer Tomeu Vizoso <tomeu@tomeuvizoso.net>2006-11-10 13:14:15 (GMT)
commit61f24de7482ceb48335d1b2635de5fdff93fd0d9 (patch)
tree2b40a632261c980900d58889e24e60d7f3a11dce /lib
parentd958e20df74edeedaaa345e40513dcba7b80d3af (diff)
Reverting clipboard changes pushed by mistake. These are commits 23565cfd483e38d3a64cd5980deea47cccb28581 and a7e4092b0e4f3d30a21ee5a7982aecd5252a0822.
Diffstat (limited to 'lib')
-rw-r--r--lib/python/_sugar.defs18
-rw-r--r--lib/python/_sugar.override2
-rw-r--r--lib/src/Makefile.am4
-rw-r--r--lib/src/SugarContentHandler.cpp3
-rw-r--r--lib/src/SugarDownload.cpp54
-rw-r--r--lib/src/sugar-browser-chandler.c56
-rw-r--r--lib/src/sugar-browser-chandler.h39
-rw-r--r--lib/src/sugar-browser.cpp2
-rw-r--r--lib/src/sugar-download-manager.c121
-rw-r--r--lib/src/sugar-download-manager.h55
-rw-r--r--lib/src/sugar-marshal.list2
11 files changed, 128 insertions, 228 deletions
diff --git a/lib/python/_sugar.defs b/lib/python/_sugar.defs
index 6a42d96..5a31c91 100644
--- a/lib/python/_sugar.defs
+++ b/lib/python/_sugar.defs
@@ -35,11 +35,11 @@
(gtype-id "SUGAR_TYPE_PUSH_SCROLLER")
)
-(define-object DownloadManager
+(define-object BrowserChandler
(in-module "Sugar")
(parent "GObject")
- (c-name "SugarDownloadManager")
- (gtype-id "SUGAR_TYPE_DOWNLOAD_MANAGER")
+ (c-name "SugarBrowserChandler")
+ (gtype-id "SUGAR_TYPE_BROWSER_CHANDLER")
)
;; Enumerations and flags ...
@@ -181,14 +181,14 @@
)
)
-;; From sugar-download-manager.h
+;; From sugar-browser-chandler.h
-(define-function sugar_download_manager_get_type
- (c-name "sugar_download_manager_get_type")
+(define-function sugar_browser_chandler_get_type
+ (c-name "sugar_browser_chandler_get_type")
(return-type "GType")
)
-(define-function get_download_manager
- (c-name "sugar_get_download_manager")
- (return-type "SugarDownloadManager*")
+(define-function get_browser_chandler
+ (c-name "sugar_get_browser_chandler")
+ (return-type "SugarBrowserChandler*")
)
diff --git a/lib/python/_sugar.override b/lib/python/_sugar.override
index f1f5cd7..9d27bbe 100644
--- a/lib/python/_sugar.override
+++ b/lib/python/_sugar.override
@@ -9,7 +9,7 @@ headers
#include "sugar-address-entry.h"
#include "sugar-tray-manager.h"
#include "sugar-push-scroller.h"
-#include "sugar-download-manager.h"
+#include "sugar-browser-chandler.h"
%%
modulename gecko
diff --git a/lib/src/Makefile.am b/lib/src/Makefile.am
index 7416f83..0224885 100644
--- a/lib/src/Makefile.am
+++ b/lib/src/Makefile.am
@@ -19,8 +19,8 @@ libsugarprivate_la_SOURCES = \
sugar-address-entry.c \
sugar-browser.h \
sugar-browser.cpp \
- sugar-download-manager.h \
- sugar-download-manager.c \
+ sugar-browser-chandler.h \
+ sugar-browser-chandler.c \
SugarContentHandler.h \
SugarContentHandler.cpp \
SugarDownload.h \
diff --git a/lib/src/SugarContentHandler.cpp b/lib/src/SugarContentHandler.cpp
index de30aec..b39b20b 100644
--- a/lib/src/SugarContentHandler.cpp
+++ b/lib/src/SugarContentHandler.cpp
@@ -1,6 +1,9 @@
#include <nsCExternalHandlerService.h>
#include <nsIFile.h>
+#include "sugar-browser-chandler.h"
+#include "SugarDownload.h"
+
#include "SugarContentHandler.h"
GSugarContentHandler::GSugarContentHandler()
diff --git a/lib/src/SugarDownload.cpp b/lib/src/SugarDownload.cpp
index b087670..9c68b8f 100644
--- a/lib/src/SugarDownload.cpp
+++ b/lib/src/SugarDownload.cpp
@@ -1,4 +1,4 @@
-#include "sugar-download-manager.h"
+#include "sugar-browser-chandler.h"
#include "SugarDownload.h"
@@ -35,39 +35,27 @@ GSugarDownload::Init (nsIURI *aSource,
NS_IMETHODIMP
GSugarDownload::OnStateChange (nsIWebProgress *aWebProgress, nsIRequest *aRequest,
PRUint32 aStateFlags, nsresult aStatus)
-{
- SugarDownloadManager *download_manager = sugar_get_download_manager();
-
- if (((aStateFlags & STATE_IS_REQUEST) &&
- (aStateFlags & STATE_IS_NETWORK) &&
- (aStateFlags & STATE_START)) ||
- aStateFlags == STATE_START) {
+{
+ nsCString url;
+ nsCString mimeType;
+ nsCString targetURI;
- nsCString url;
- nsCString mimeType;
+ if ((((aStateFlags & STATE_IS_REQUEST) &&
+ (aStateFlags & STATE_IS_NETWORK) &&
+ (aStateFlags & STATE_STOP)) ||
+ aStateFlags == STATE_STOP) &&
+ NS_SUCCEEDED (aStatus)) {
mMIMEInfo->GetMIMEType(mimeType);
mSource->GetSpec(url);
- sugar_download_manager_download_started(download_manager,
- url.get(),
- mimeType.get(),
- mTargetFileName.get());
-
- } else if (((aStateFlags & STATE_IS_REQUEST) &&
- (aStateFlags & STATE_IS_NETWORK) &&
- (aStateFlags & STATE_STOP)) ||
- aStateFlags == STATE_STOP) {
-
- if (NS_SUCCEEDED (aStatus)) {
- sugar_download_manager_download_completed(download_manager,
- mTargetFileName.get());
- } else {
- sugar_download_manager_download_cancelled(download_manager,
- mTargetFileName.get());
- }
+ SugarBrowserChandler *browser_chandler = sugar_get_browser_chandler();
+ sugar_browser_chandler_handle_content(browser_chandler,
+ url.get(),
+ mimeType.get(),
+ mTargetFileName.get());
}
-
+
return NS_OK;
}
@@ -91,15 +79,7 @@ GSugarDownload::OnProgressChange64 (nsIWebProgress *aWebProgress,
PRInt64 aMaxSelfProgress,
PRInt64 aCurTotalProgress,
PRInt64 aMaxTotalProgress)
-{
- SugarDownloadManager *download_manager = sugar_get_download_manager();
- PRInt32 percentComplete =
- (PRInt32)(((float)aCurSelfProgress / (float)aMaxSelfProgress) * 100.0);
-
- sugar_download_manager_update_progress(download_manager,
- mTargetFileName.get(),
- percentComplete);
-
+{
return NS_OK;
}
diff --git a/lib/src/sugar-browser-chandler.c b/lib/src/sugar-browser-chandler.c
new file mode 100644
index 0000000..a65519a
--- /dev/null
+++ b/lib/src/sugar-browser-chandler.c
@@ -0,0 +1,56 @@
+#include "sugar-marshal.h"
+#include "sugar-browser-chandler.h"
+
+enum {
+ HANDLE_CONTENT,
+ LAST_SIGNAL
+};
+static guint signals[LAST_SIGNAL] = { 0 };
+
+G_DEFINE_TYPE(SugarBrowserChandler, sugar_browser_chandler, G_TYPE_OBJECT)
+
+SugarBrowserChandler *browserChandler = NULL;
+
+static void
+sugar_browser_chandler_init(SugarBrowserChandler *browserChandler)
+{
+}
+
+static void
+sugar_browser_chandler_class_init(SugarBrowserChandlerClass *browser_chandler_class)
+{
+ signals[HANDLE_CONTENT] =
+ g_signal_new ("handle-content",
+ G_OBJECT_CLASS_TYPE (browser_chandler_class),
+ G_SIGNAL_RUN_LAST,
+ G_STRUCT_OFFSET (SugarBrowserChandlerClass, handle_content),
+ NULL, NULL,
+ sugar_marshal_VOID__STRING_STRING_STRING,
+ G_TYPE_NONE, 3,
+ G_TYPE_STRING,
+ G_TYPE_STRING,
+ G_TYPE_STRING);
+}
+
+SugarBrowserChandler *
+sugar_get_browser_chandler()
+{
+ if(browserChandler == NULL)
+ browserChandler = g_object_new(SUGAR_TYPE_BROWSER_CHANDLER, NULL);
+
+ return browserChandler;
+}
+
+void
+sugar_browser_chandler_handle_content (SugarBrowserChandler *browser_chandler,
+ const char *url,
+ const char *mime_type,
+ const char *tmp_file_name)
+{
+ g_signal_emit(browser_chandler,
+ signals[HANDLE_CONTENT],
+ 0 /* details */,
+ url,
+ mime_type,
+ tmp_file_name);
+}
diff --git a/lib/src/sugar-browser-chandler.h b/lib/src/sugar-browser-chandler.h
new file mode 100644
index 0000000..cccd983
--- /dev/null
+++ b/lib/src/sugar-browser-chandler.h
@@ -0,0 +1,39 @@
+#ifndef __SUGAR_BROWSER_CHANDLER_H__
+#define __SUGAR_BROWSER_CHANDLER_H__
+
+#include <glib-object.h>
+#include <glib.h>
+
+G_BEGIN_DECLS
+
+typedef struct _SugarBrowserChandler SugarBrowserChandler;
+typedef struct _SugarBrowserChandlerClass SugarBrowserChandlerClass;
+
+#define SUGAR_TYPE_BROWSER_CHANDLER (sugar_browser_chandler_get_type())
+#define SUGAR_BROWSER_CHANDLER(object) (G_TYPE_CHECK_INSTANCE_CAST((object), SUGAR_TYPE_BROWSER_CHANDLER, SugarBrowserChandler))
+#define SUGAR_BROWSER_CHANDLER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), SUGAR_TYPE_BROWSER_CHANDLER, SugarBrowserChandlerClass))
+#define SUGAR_IS_BROWSER_CHANDLER(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), SUGAR_TYPE_BROWSER_CHANDLER))
+#define SUGAR_IS_BROWSER_CHANDLER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SUGAR_TYPE_BROWSER_CHANDLER))
+#define SUGAR_BROWSER_CHANDLER_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), SUGAR_TYPE_BROWSER_CHANDLER, SugarBrowserChandlerClass))
+
+struct _SugarBrowserChandler {
+ GObject base_instance;
+};
+
+struct _SugarBrowserChandlerClass {
+ GObjectClass base_class;
+
+ void (* handle_content) (char *url, char *tmp_file_name);
+
+};
+
+GType sugar_browser_chandler_get_type (void);
+SugarBrowserChandler *sugar_get_browser_chandler (void);
+void sugar_browser_chandler_handle_content (SugarBrowserChandler *chandler,
+ const char *url,
+ const char *mime_type,
+ const char *tmp_file_name);
+
+G_END_DECLS
+
+#endif
diff --git a/lib/src/sugar-browser.cpp b/lib/src/sugar-browser.cpp
index f787f19..d2ffb8a 100644
--- a/lib/src/sugar-browser.cpp
+++ b/lib/src/sugar-browser.cpp
@@ -78,7 +78,7 @@ sugar_browser_startup(void)
PR_TRUE, getter_AddRefs(file));
NS_ENSURE_TRUE(file, FALSE);
- rv = prefService->ReadUserPrefs (file);
+ rv = prefService->ReadUserPrefs (file);
if (NS_FAILED(rv)) {
g_warning ("failed to read default preferences, error: %x", rv);
return FALSE;
diff --git a/lib/src/sugar-download-manager.c b/lib/src/sugar-download-manager.c
deleted file mode 100644
index c3ffcf2..0000000
--- a/lib/src/sugar-download-manager.c
+++ /dev/null
@@ -1,121 +0,0 @@
-#include "sugar-marshal.h"
-#include "sugar-download-manager.h"
-
-enum {
- DOWNLOAD_STARTED,
- DOWNLOAD_COMPLETED,
- DOWNLOAD_CANCELLED,
- DOWNLOAD_PROGRESS,
- LAST_SIGNAL
-};
-static guint signals[LAST_SIGNAL] = { 0 };
-
-G_DEFINE_TYPE(SugarDownloadManager, sugar_download_manager, G_TYPE_OBJECT)
-
-SugarDownloadManager *DownloadManager = NULL;
-
-static void
-sugar_download_manager_init(SugarDownloadManager *DownloadManager)
-{
-}
-
-static void
-sugar_download_manager_class_init(SugarDownloadManagerClass *download_manager_class)
-{
- signals[DOWNLOAD_STARTED] =
- g_signal_new ("download-started",
- G_OBJECT_CLASS_TYPE (download_manager_class),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (SugarDownloadManagerClass, handle_content),
- NULL, NULL,
- sugar_marshal_VOID__STRING_STRING_STRING,
- G_TYPE_NONE, 3,
- G_TYPE_STRING,
- G_TYPE_STRING,
- G_TYPE_STRING);
-
- signals[DOWNLOAD_COMPLETED] =
- g_signal_new ("download-completed",
- G_OBJECT_CLASS_TYPE (download_manager_class),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (SugarDownloadManagerClass, handle_content),
- NULL, NULL,
- sugar_marshal_VOID__STRING,
- G_TYPE_NONE, 1,
- G_TYPE_STRING);
-
- signals[DOWNLOAD_CANCELLED] =
- g_signal_new ("download-cancelled",
- G_OBJECT_CLASS_TYPE (download_manager_class),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (SugarDownloadManagerClass, handle_content),
- NULL, NULL,
- sugar_marshal_VOID__STRING,
- G_TYPE_NONE, 1,
- G_TYPE_STRING);
-
- signals[DOWNLOAD_PROGRESS] =
- g_signal_new ("download-progress",
- G_OBJECT_CLASS_TYPE (download_manager_class),
- G_SIGNAL_RUN_LAST,
- G_STRUCT_OFFSET (SugarDownloadManagerClass, handle_content),
- NULL, NULL,
- sugar_marshal_VOID__STRING_INT,
- G_TYPE_NONE, 2,
- G_TYPE_STRING,
- G_TYPE_INT);
-}
-
-SugarDownloadManager *
-sugar_get_download_manager()
-{
- if(DownloadManager == NULL)
- DownloadManager = g_object_new(SUGAR_TYPE_DOWNLOAD_MANAGER, NULL);
-
- return DownloadManager;
-}
-
-void
-sugar_download_manager_download_started (SugarDownloadManager *download_manager,
- const char *url,
- const char *mime_type,
- const char *tmp_file_name)
-{
- g_signal_emit(download_manager,
- signals[DOWNLOAD_STARTED],
- 0 /* details */,
- url,
- mime_type,
- tmp_file_name);
-}
-
-void
-sugar_download_manager_download_completed (SugarDownloadManager *download_manager,
- const char *tmp_file_name)
-{
- g_signal_emit(download_manager,
- signals[DOWNLOAD_COMPLETED],
- 0 /* details */,
- tmp_file_name);
-}
-
-void sugar_download_manager_download_cancelled (SugarDownloadManager *download_manager,
- const char *tmp_file_name)
-{
- g_signal_emit(download_manager,
- signals[DOWNLOAD_CANCELLED],
- 0 /* details */,
- tmp_file_name);
-}
-
-void
-sugar_download_manager_update_progress (SugarDownloadManager *download_manager,
- const char *tmp_file_name,
- const int percent)
-{
- g_signal_emit(download_manager,
- signals[DOWNLOAD_PROGRESS],
- 0 /* details */,
- tmp_file_name,
- percent);
-}
diff --git a/lib/src/sugar-download-manager.h b/lib/src/sugar-download-manager.h
deleted file mode 100644
index 2d112d8..0000000
--- a/lib/src/sugar-download-manager.h
+++ /dev/null
@@ -1,55 +0,0 @@
-#ifndef __SUGAR_DOWNLOAD_MANAGER_H__
-#define __SUGAR_DOWNLOAD_MANAGER_H__
-
-#include <glib-object.h>
-#include <glib.h>
-
-G_BEGIN_DECLS
-
-typedef struct _SugarDownloadManager SugarDownloadManager;
-typedef struct _SugarDownloadManagerClass SugarDownloadManagerClass;
-
-#define SUGAR_TYPE_DOWNLOAD_MANAGER (sugar_download_manager_get_type())
-#define SUGAR_DOWNLOAD_MANAGER(object) (G_TYPE_CHECK_INSTANCE_CAST((object), SUGAR_TYPE_DOWNLOAD_MANAGER, SugarDownloadManager))
-#define SUGAR_DOWNLOAD_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), SUGAR_TYPE_DOWNLOAD_MANAGER, SugarDownloadManagerClass))
-#define SUGAR_IS_DOWNLOAD_MANAGER(object) (G_TYPE_CHECK_INSTANCE_TYPE((object), SUGAR_TYPE_DOWNLOAD_MANAGER))
-#define SUGAR_IS_DOWNLOAD_MANAGER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), SUGAR_TYPE_DOWNLOAD_MANAGER))
-#define SUGAR_DOWNLOAD_MANAGER_GET_CLASS(object) (G_TYPE_INSTANCE_GET_CLASS((object), SUGAR_TYPE_DOWNLOAD_MANAGER, SugarDownloadManagerClass))
-
-struct _SugarDownloadManager {
- GObject base_instance;
-};
-
-struct _SugarDownloadManagerClass {
- GObjectClass base_class;
-
- void (* handle_content) (char *url, char *tmp_file_name);
-
-};
-
-GType sugar_download_manager_get_type(void);
-
-SugarDownloadManager *sugar_get_download_manager(void);
-
-void sugar_download_manager_download_started(
- SugarDownloadManager *download_manager,
- const char *url,
- const char *mime_type,
- const char *tmp_file_name);
-
-void sugar_download_manager_download_completed(
- SugarDownloadManager *download_manager,
- const char *tmp_file_name);
-
-void sugar_download_manager_download_cancelled(
- SugarDownloadManager *download_manager,
- const char *tmp_file_name);
-
-void sugar_download_manager_update_progress(
- SugarDownloadManager *download_manager,
- const char *tmp_file_name,
- const int percent);
-
-G_END_DECLS
-
-#endif
diff --git a/lib/src/sugar-marshal.list b/lib/src/sugar-marshal.list
index 4d987f8..5a0120f 100644
--- a/lib/src/sugar-marshal.list
+++ b/lib/src/sugar-marshal.list
@@ -1,5 +1,3 @@
VOID:OBJECT,STRING,LONG,LONG
VOID:OBJECT,LONG
VOID:STRING,STRING,STRING
-VOID:STRING,INT
-VOID:STRING