/* * Copyright (C) 2008 by Steve Krulewitz * Licensed under GPLv2 or later, see file LICENSE in the xpi for details. */ #include "nsISupports.idl" interface nsIWebProgressListener; [scriptable, uuid(19f7f42d-9263-4a40-94c9-ca0436033127)] interface gfIUpdateListener : nsISupports { void onUpdateStarted(); void onUpdateFinished(in nsresult aStatus, in AString aMessage); void onDownloadProgress(in long aCurrentBytes, in long aTotalBytes); }; [scriptable, uuid(f159abd7-3076-426e-b5ee-648ccea05261)] interface gfIUpdaterService : nsISupports { readonly attribute boolean isUpdating; readonly attribute long long nextUpdateDate; attribute unsigned long updateIntervalMinutes; void startUpdate(in boolean aForce); void cancelUpdate(); void addListener(in gfIUpdateListener aListener); void removeListener(in gfIUpdateListener aListener); };