mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
0b02d21584
--HG-- rename : toolkit/components/alerts/src/mac/Makefile.in => toolkit/components/alerts/mac/Makefile.in rename : toolkit/components/alerts/src/mac/growl/CFGrowlAdditions.c => toolkit/components/alerts/mac/growl/CFGrowlAdditions.c rename : toolkit/components/alerts/src/mac/growl/CFGrowlAdditions.h => toolkit/components/alerts/mac/growl/CFGrowlAdditions.h rename : toolkit/components/alerts/src/mac/growl/CFGrowlDefines.h => toolkit/components/alerts/mac/growl/CFGrowlDefines.h rename : toolkit/components/alerts/src/mac/growl/CFMutableDictionaryAdditions.c => toolkit/components/alerts/mac/growl/CFMutableDictionaryAdditions.c rename : toolkit/components/alerts/src/mac/growl/CFMutableDictionaryAdditions.h => toolkit/components/alerts/mac/growl/CFMutableDictionaryAdditions.h rename : toolkit/components/alerts/src/mac/growl/CFURLAdditions.c => toolkit/components/alerts/mac/growl/CFURLAdditions.c rename : toolkit/components/alerts/src/mac/growl/CFURLAdditions.h => toolkit/components/alerts/mac/growl/CFURLAdditions.h rename : toolkit/components/alerts/src/mac/growl/GrowlAbstractSingletonObject.h => toolkit/components/alerts/mac/growl/GrowlAbstractSingletonObject.h rename : toolkit/components/alerts/src/mac/growl/GrowlApplicationBridge.h => toolkit/components/alerts/mac/growl/GrowlApplicationBridge.h rename : toolkit/components/alerts/src/mac/growl/GrowlApplicationBridge.m => toolkit/components/alerts/mac/growl/GrowlApplicationBridge.m rename : toolkit/components/alerts/src/mac/growl/GrowlDefines.h => toolkit/components/alerts/mac/growl/GrowlDefines.h rename : toolkit/components/alerts/src/mac/growl/GrowlDefinesInternal.h => toolkit/components/alerts/mac/growl/GrowlDefinesInternal.h rename : toolkit/components/alerts/src/mac/growl/GrowlPathUtilities.h => toolkit/components/alerts/mac/growl/GrowlPathUtilities.h rename : toolkit/components/alerts/src/mac/growl/GrowlPathUtilities.m => toolkit/components/alerts/mac/growl/GrowlPathUtilities.m rename : toolkit/components/alerts/src/mac/growl/GrowlPathway.h => toolkit/components/alerts/mac/growl/GrowlPathway.h rename : toolkit/components/alerts/src/mac/growl/GrowlPreferencesController.h => toolkit/components/alerts/mac/growl/GrowlPreferencesController.h rename : toolkit/components/alerts/src/mac/growl/GrowlTicketController.h => toolkit/components/alerts/mac/growl/GrowlTicketController.h rename : toolkit/components/alerts/src/mac/growl/Makefile.in => toolkit/components/alerts/mac/growl/Makefile.in rename : toolkit/components/alerts/src/mac/growl/license.txt => toolkit/components/alerts/mac/growl/license.txt rename : toolkit/components/alerts/src/mac/mozGrowlDelegate.h => toolkit/components/alerts/mac/mozGrowlDelegate.h rename : toolkit/components/alerts/src/mac/mozGrowlDelegate.mm => toolkit/components/alerts/mac/mozGrowlDelegate.mm rename : toolkit/components/alerts/src/mac/nsAlertsImageLoadListener.h => toolkit/components/alerts/mac/nsAlertsImageLoadListener.h rename : toolkit/components/alerts/src/mac/nsAlertsImageLoadListener.mm => toolkit/components/alerts/mac/nsAlertsImageLoadListener.mm rename : toolkit/components/alerts/src/mac/nsAlertsService.h => toolkit/components/alerts/mac/nsAlertsService.h rename : toolkit/components/alerts/src/mac/nsAlertsService.mm => toolkit/components/alerts/mac/nsAlertsService.mm rename : toolkit/components/alerts/src/mac/nsAlertsServiceModule.cpp => toolkit/components/alerts/mac/nsAlertsServiceModule.cpp rename : toolkit/components/alerts/src/mac/nsNotificationsList.h => toolkit/components/alerts/mac/nsNotificationsList.h rename : toolkit/components/alerts/src/mac/nsNotificationsList.mm => toolkit/components/alerts/mac/nsNotificationsList.mm rename : toolkit/components/alerts/src/nsAlertsService.cpp => toolkit/components/alerts/nsAlertsService.cpp rename : toolkit/components/alerts/src/nsAlertsService.h => toolkit/components/alerts/nsAlertsService.h rename : toolkit/components/alerts/public/nsIAlertsService.idl => toolkit/components/alerts/nsIAlertsService.idl rename : toolkit/components/alerts/public/nsINotificationsList.idl => toolkit/components/alerts/nsINotificationsList.idl rename : toolkit/components/autocomplete/src/nsAutoCompleteController.cpp => toolkit/components/autocomplete/nsAutoCompleteController.cpp rename : toolkit/components/autocomplete/src/nsAutoCompleteController.h => toolkit/components/autocomplete/nsAutoCompleteController.h rename : toolkit/components/autocomplete/src/nsAutoCompleteSimpleResult.cpp => toolkit/components/autocomplete/nsAutoCompleteSimpleResult.cpp rename : toolkit/components/autocomplete/src/nsAutoCompleteSimpleResult.h => toolkit/components/autocomplete/nsAutoCompleteSimpleResult.h rename : toolkit/components/autocomplete/public/nsIAutoCompleteController.idl => toolkit/components/autocomplete/nsIAutoCompleteController.idl rename : toolkit/components/autocomplete/public/nsIAutoCompleteInput.idl => toolkit/components/autocomplete/nsIAutoCompleteInput.idl rename : toolkit/components/autocomplete/public/nsIAutoCompletePopup.idl => toolkit/components/autocomplete/nsIAutoCompletePopup.idl rename : toolkit/components/autocomplete/public/nsIAutoCompleteResult.idl => toolkit/components/autocomplete/nsIAutoCompleteResult.idl rename : toolkit/components/autocomplete/public/nsIAutoCompleteSearch.idl => toolkit/components/autocomplete/nsIAutoCompleteSearch.idl rename : toolkit/components/autocomplete/public/nsIAutoCompleteSimpleResult.idl => toolkit/components/autocomplete/nsIAutoCompleteSimpleResult.idl rename : toolkit/components/commandlines/src/nsCommandLine.cpp => toolkit/components/commandlines/nsCommandLine.cpp rename : toolkit/components/commandlines/public/nsICommandLine.idl => toolkit/components/commandlines/nsICommandLine.idl rename : toolkit/components/commandlines/public/nsICommandLineHandler.idl => toolkit/components/commandlines/nsICommandLineHandler.idl rename : toolkit/components/commandlines/public/nsICommandLineRunner.idl => toolkit/components/commandlines/nsICommandLineRunner.idl rename : toolkit/components/commandlines/public/nsICommandLineValidator.idl => toolkit/components/commandlines/nsICommandLineValidator.idl rename : toolkit/components/contentprefs/src/nsContentPrefService.js => toolkit/components/contentprefs/nsContentPrefService.js rename : toolkit/components/contentprefs/src/nsContentPrefService.manifest => toolkit/components/contentprefs/nsContentPrefService.manifest rename : toolkit/components/downloads/src/nsDownloadManager.cpp => toolkit/components/downloads/nsDownloadManager.cpp rename : toolkit/components/downloads/src/nsDownloadManager.h => toolkit/components/downloads/nsDownloadManager.h rename : toolkit/components/downloads/src/nsDownloadManagerUI.js => toolkit/components/downloads/nsDownloadManagerUI.js rename : toolkit/components/downloads/src/nsDownloadManagerUI.manifest => toolkit/components/downloads/nsDownloadManagerUI.manifest rename : toolkit/components/downloads/src/nsDownloadProxy.h => toolkit/components/downloads/nsDownloadProxy.h rename : toolkit/components/downloads/src/nsDownloadScanner.cpp => toolkit/components/downloads/nsDownloadScanner.cpp rename : toolkit/components/downloads/src/nsDownloadScanner.h => toolkit/components/downloads/nsDownloadScanner.h rename : toolkit/components/downloads/public/nsIDownload.idl => toolkit/components/downloads/nsIDownload.idl rename : toolkit/components/downloads/public/nsIDownloadManager.idl => toolkit/components/downloads/nsIDownloadManager.idl rename : toolkit/components/downloads/public/nsIDownloadManagerUI.idl => toolkit/components/downloads/nsIDownloadManagerUI.idl rename : toolkit/components/downloads/public/nsIDownloadProgressListener.idl => toolkit/components/downloads/nsIDownloadProgressListener.idl rename : toolkit/components/feeds/src/FeedProcessor.js => toolkit/components/feeds/FeedProcessor.js rename : toolkit/components/feeds/src/FeedProcessor.manifest => toolkit/components/feeds/FeedProcessor.manifest rename : toolkit/components/feeds/public/nsIFeed.idl => toolkit/components/feeds/nsIFeed.idl rename : toolkit/components/feeds/public/nsIFeedContainer.idl => toolkit/components/feeds/nsIFeedContainer.idl rename : toolkit/components/feeds/public/nsIFeedElementBase.idl => toolkit/components/feeds/nsIFeedElementBase.idl rename : toolkit/components/feeds/public/nsIFeedEntry.idl => toolkit/components/feeds/nsIFeedEntry.idl rename : toolkit/components/feeds/public/nsIFeedGenerator.idl => toolkit/components/feeds/nsIFeedGenerator.idl rename : toolkit/components/feeds/public/nsIFeedListener.idl => toolkit/components/feeds/nsIFeedListener.idl rename : toolkit/components/feeds/public/nsIFeedPerson.idl => toolkit/components/feeds/nsIFeedPerson.idl rename : toolkit/components/feeds/public/nsIFeedProcessor.idl => toolkit/components/feeds/nsIFeedProcessor.idl rename : toolkit/components/feeds/public/nsIFeedResult.idl => toolkit/components/feeds/nsIFeedResult.idl rename : toolkit/components/feeds/public/nsIFeedTextConstruct.idl => toolkit/components/feeds/nsIFeedTextConstruct.idl rename : toolkit/components/feeds/public/nsIScriptableUnescapeHTML.idl => toolkit/components/feeds/nsIScriptableUnescapeHTML.idl rename : toolkit/components/feeds/src/nsScriptableUnescapeHTML.cpp => toolkit/components/feeds/nsScriptableUnescapeHTML.cpp rename : toolkit/components/feeds/src/nsScriptableUnescapeHTML.h => toolkit/components/feeds/nsScriptableUnescapeHTML.h rename : toolkit/components/filepicker/src/nsFilePicker.js => toolkit/components/filepicker/nsFilePicker.js rename : toolkit/components/filepicker/src/nsFilePicker.manifest => toolkit/components/filepicker/nsFilePicker.manifest rename : toolkit/components/filepicker/src/nsFileView.cpp => toolkit/components/filepicker/nsFileView.cpp rename : toolkit/components/filepicker/public/nsIFileView.idl => toolkit/components/filepicker/nsIFileView.idl rename : toolkit/components/find/src/nsFindService.cpp => toolkit/components/find/nsFindService.cpp rename : toolkit/components/find/src/nsFindService.h => toolkit/components/find/nsFindService.h rename : toolkit/components/find/public/nsIFindService.idl => toolkit/components/find/nsIFindService.idl rename : toolkit/components/microformats/src/Microformats.js => toolkit/components/microformats/Microformats.js rename : toolkit/components/parentalcontrols/public/nsIParentalControlsService.idl => toolkit/components/parentalcontrols/nsIParentalControlsService.idl rename : toolkit/components/parentalcontrols/src/nsParentalControlsServiceWin.cpp => toolkit/components/parentalcontrols/nsParentalControlsServiceWin.cpp rename : toolkit/components/parentalcontrols/src/nsParentalControlsServiceWin.h => toolkit/components/parentalcontrols/nsParentalControlsServiceWin.h rename : toolkit/components/passwordmgr/src/crypto-SDR.js => toolkit/components/passwordmgr/crypto-SDR.js rename : toolkit/components/passwordmgr/public/nsILoginInfo.idl => toolkit/components/passwordmgr/nsILoginInfo.idl rename : toolkit/components/passwordmgr/public/nsILoginManager.idl => toolkit/components/passwordmgr/nsILoginManager.idl rename : toolkit/components/passwordmgr/public/nsILoginManagerCrypto.idl => toolkit/components/passwordmgr/nsILoginManagerCrypto.idl rename : toolkit/components/passwordmgr/public/nsILoginManagerIEMigrationHelper.idl => toolkit/components/passwordmgr/nsILoginManagerIEMigrationHelper.idl rename : toolkit/components/passwordmgr/public/nsILoginManagerPrompter.idl => toolkit/components/passwordmgr/nsILoginManagerPrompter.idl rename : toolkit/components/passwordmgr/public/nsILoginManagerStorage.idl => toolkit/components/passwordmgr/nsILoginManagerStorage.idl rename : toolkit/components/passwordmgr/public/nsILoginMetaInfo.idl => toolkit/components/passwordmgr/nsILoginMetaInfo.idl rename : toolkit/components/passwordmgr/src/nsLoginInfo.js => toolkit/components/passwordmgr/nsLoginInfo.js rename : toolkit/components/passwordmgr/src/nsLoginManager.js => toolkit/components/passwordmgr/nsLoginManager.js rename : toolkit/components/passwordmgr/src/nsLoginManagerPrompter.js => toolkit/components/passwordmgr/nsLoginManagerPrompter.js rename : toolkit/components/passwordmgr/src/passwordmgr.manifest => toolkit/components/passwordmgr/passwordmgr.manifest rename : toolkit/components/passwordmgr/src/storage-Legacy.js => toolkit/components/passwordmgr/storage-Legacy.js rename : toolkit/components/passwordmgr/src/storage-mozStorage.js => toolkit/components/passwordmgr/storage-mozStorage.js rename : toolkit/components/places/src/AsyncFaviconHelpers.cpp => toolkit/components/places/AsyncFaviconHelpers.cpp rename : toolkit/components/places/src/AsyncFaviconHelpers.h => toolkit/components/places/AsyncFaviconHelpers.h rename : toolkit/components/places/src/Helpers.cpp => toolkit/components/places/Helpers.cpp rename : toolkit/components/places/src/Helpers.h => toolkit/components/places/Helpers.h rename : toolkit/components/places/src/History.cpp => toolkit/components/places/History.cpp rename : toolkit/components/places/src/History.h => toolkit/components/places/History.h rename : toolkit/components/places/src/PlaceInfo.cpp => toolkit/components/places/PlaceInfo.cpp rename : toolkit/components/places/src/PlaceInfo.h => toolkit/components/places/PlaceInfo.h rename : toolkit/components/places/src/PlacesCategoriesStarter.js => toolkit/components/places/PlacesCategoriesStarter.js rename : toolkit/components/places/src/PlacesDBUtils.jsm => toolkit/components/places/PlacesDBUtils.jsm rename : toolkit/components/places/src/PlacesUtils.jsm => toolkit/components/places/PlacesUtils.jsm rename : toolkit/components/places/src/SQLFunctions.cpp => toolkit/components/places/SQLFunctions.cpp rename : toolkit/components/places/src/SQLFunctions.h => toolkit/components/places/SQLFunctions.h rename : toolkit/components/places/src/VisitInfo.cpp => toolkit/components/places/VisitInfo.cpp rename : toolkit/components/places/src/VisitInfo.h => toolkit/components/places/VisitInfo.h rename : toolkit/components/places/public/mozIAsyncHistory.idl => toolkit/components/places/mozIAsyncHistory.idl rename : toolkit/components/places/public/mozIPlacesAutoComplete.idl => toolkit/components/places/mozIPlacesAutoComplete.idl rename : toolkit/components/places/src/nsAnnoProtocolHandler.cpp => toolkit/components/places/nsAnnoProtocolHandler.cpp rename : toolkit/components/places/src/nsAnnoProtocolHandler.h => toolkit/components/places/nsAnnoProtocolHandler.h rename : toolkit/components/places/src/nsAnnotationService.cpp => toolkit/components/places/nsAnnotationService.cpp rename : toolkit/components/places/src/nsAnnotationService.h => toolkit/components/places/nsAnnotationService.h rename : toolkit/components/places/src/nsFaviconService.cpp => toolkit/components/places/nsFaviconService.cpp rename : toolkit/components/places/src/nsFaviconService.h => toolkit/components/places/nsFaviconService.h rename : toolkit/components/places/public/nsIAnnotationService.idl => toolkit/components/places/nsIAnnotationService.idl rename : toolkit/components/places/public/nsIBrowserHistory.idl => toolkit/components/places/nsIBrowserHistory.idl rename : toolkit/components/places/public/nsIDynamicContainer.idl => toolkit/components/places/nsIDynamicContainer.idl rename : toolkit/components/places/public/nsIFaviconService.idl => toolkit/components/places/nsIFaviconService.idl rename : toolkit/components/places/public/nsILivemarkService.idl => toolkit/components/places/nsILivemarkService.idl rename : toolkit/components/places/public/nsIMicrosummaryService.idl => toolkit/components/places/nsIMicrosummaryService.idl rename : toolkit/components/places/public/nsINavBookmarksService.idl => toolkit/components/places/nsINavBookmarksService.idl rename : toolkit/components/places/public/nsINavHistoryService.idl => toolkit/components/places/nsINavHistoryService.idl rename : toolkit/components/places/public/nsIPlacesImportExportService.idl => toolkit/components/places/nsIPlacesImportExportService.idl rename : toolkit/components/places/public/nsITaggingService.idl => toolkit/components/places/nsITaggingService.idl rename : toolkit/components/places/src/nsLivemarkService.js => toolkit/components/places/nsLivemarkService.js rename : toolkit/components/places/src/nsMaybeWeakPtr.cpp => toolkit/components/places/nsMaybeWeakPtr.cpp rename : toolkit/components/places/src/nsMaybeWeakPtr.h => toolkit/components/places/nsMaybeWeakPtr.h rename : toolkit/components/places/src/nsMicrosummaryService.js => toolkit/components/places/nsMicrosummaryService.js rename : toolkit/components/places/src/nsMorkHistoryImporter.cpp => toolkit/components/places/nsMorkHistoryImporter.cpp rename : toolkit/components/places/src/nsNavBookmarks.cpp => toolkit/components/places/nsNavBookmarks.cpp rename : toolkit/components/places/src/nsNavBookmarks.h => toolkit/components/places/nsNavBookmarks.h rename : toolkit/components/places/src/nsNavHistory.cpp => toolkit/components/places/nsNavHistory.cpp rename : toolkit/components/places/src/nsNavHistory.h => toolkit/components/places/nsNavHistory.h rename : toolkit/components/places/src/nsNavHistoryQuery.cpp => toolkit/components/places/nsNavHistoryQuery.cpp rename : toolkit/components/places/src/nsNavHistoryQuery.h => toolkit/components/places/nsNavHistoryQuery.h rename : toolkit/components/places/src/nsNavHistoryResult.cpp => toolkit/components/places/nsNavHistoryResult.cpp rename : toolkit/components/places/src/nsNavHistoryResult.h => toolkit/components/places/nsNavHistoryResult.h rename : toolkit/components/places/public/nsPIPlacesDatabase.idl => toolkit/components/places/nsPIPlacesDatabase.idl rename : toolkit/components/places/public/nsPIPlacesHistoryListenersNotifier.idl => toolkit/components/places/nsPIPlacesHistoryListenersNotifier.idl rename : toolkit/components/places/src/nsPlacesAutoComplete.js => toolkit/components/places/nsPlacesAutoComplete.js rename : toolkit/components/places/src/nsPlacesAutoComplete.manifest => toolkit/components/places/nsPlacesAutoComplete.manifest rename : toolkit/components/places/src/nsPlacesExpiration.js => toolkit/components/places/nsPlacesExpiration.js rename : toolkit/components/places/src/nsPlacesImportExportService.cpp => toolkit/components/places/nsPlacesImportExportService.cpp rename : toolkit/components/places/src/nsPlacesImportExportService.h => toolkit/components/places/nsPlacesImportExportService.h rename : toolkit/components/places/src/nsPlacesIndexes.h => toolkit/components/places/nsPlacesIndexes.h rename : toolkit/components/places/src/nsPlacesMacros.h => toolkit/components/places/nsPlacesMacros.h rename : toolkit/components/places/src/nsPlacesModule.cpp => toolkit/components/places/nsPlacesModule.cpp rename : toolkit/components/places/src/nsPlacesTables.h => toolkit/components/places/nsPlacesTables.h rename : toolkit/components/places/src/nsPlacesTriggers.h => toolkit/components/places/nsPlacesTriggers.h rename : toolkit/components/places/src/nsTaggingService.js => toolkit/components/places/nsTaggingService.js rename : toolkit/components/places/src/toolkitplaces.manifest => toolkit/components/places/toolkitplaces.manifest rename : toolkit/components/places/src/utils.js => toolkit/components/places/utils.js rename : toolkit/components/satchel/src/formSubmitListener.js => toolkit/components/satchel/formSubmitListener.js rename : toolkit/components/satchel/src/nsFormAutoComplete.js => toolkit/components/satchel/nsFormAutoComplete.js rename : toolkit/components/satchel/src/nsFormAutoCompleteResult.jsm => toolkit/components/satchel/nsFormAutoCompleteResult.jsm rename : toolkit/components/satchel/src/nsFormFillController.cpp => toolkit/components/satchel/nsFormFillController.cpp rename : toolkit/components/satchel/src/nsFormFillController.h => toolkit/components/satchel/nsFormFillController.h rename : toolkit/components/satchel/src/nsFormHistory.js => toolkit/components/satchel/nsFormHistory.js rename : toolkit/components/satchel/public/nsIFormAutoComplete.idl => toolkit/components/satchel/nsIFormAutoComplete.idl rename : toolkit/components/satchel/public/nsIFormFillController.idl => toolkit/components/satchel/nsIFormFillController.idl rename : toolkit/components/satchel/public/nsIFormHistory.idl => toolkit/components/satchel/nsIFormHistory.idl rename : toolkit/components/satchel/public/nsIInputListAutoComplete.idl => toolkit/components/satchel/nsIInputListAutoComplete.idl rename : toolkit/components/satchel/src/nsInputListAutoComplete.js => toolkit/components/satchel/nsInputListAutoComplete.js rename : toolkit/components/satchel/src/satchel.manifest => toolkit/components/satchel/satchel.manifest rename : toolkit/components/startup/src/nsAppStartup.cpp => toolkit/components/startup/nsAppStartup.cpp rename : toolkit/components/startup/src/nsAppStartup.h => toolkit/components/startup/nsAppStartup.h rename : toolkit/components/startup/src/nsTryToClose.js => toolkit/components/startup/nsTryToClose.js rename : toolkit/components/startup/src/nsTryToClose.manifest => toolkit/components/startup/nsTryToClose.manifest rename : toolkit/components/startup/src/nsUserInfo.h => toolkit/components/startup/nsUserInfo.h rename : toolkit/components/startup/src/nsUserInfoMac.h => toolkit/components/startup/nsUserInfoMac.h rename : toolkit/components/startup/src/nsUserInfoMac.mm => toolkit/components/startup/nsUserInfoMac.mm rename : toolkit/components/startup/src/nsUserInfoOS2.cpp => toolkit/components/startup/nsUserInfoOS2.cpp rename : toolkit/components/startup/src/nsUserInfoUnix.cpp => toolkit/components/startup/nsUserInfoUnix.cpp rename : toolkit/components/startup/src/nsUserInfoWin.cpp => toolkit/components/startup/nsUserInfoWin.cpp rename : toolkit/components/typeaheadfind/public/nsITypeAheadFind.idl => toolkit/components/typeaheadfind/nsITypeAheadFind.idl rename : toolkit/components/typeaheadfind/src/nsTypeAheadFind.cpp => toolkit/components/typeaheadfind/nsTypeAheadFind.cpp rename : toolkit/components/typeaheadfind/src/nsTypeAheadFind.h => toolkit/components/typeaheadfind/nsTypeAheadFind.h rename : toolkit/components/url-classifier/public/nsIUrlClassifierDBService.idl => toolkit/components/url-classifier/nsIUrlClassifierDBService.idl rename : toolkit/components/url-classifier/public/nsIUrlClassifierHashCompleter.idl => toolkit/components/url-classifier/nsIUrlClassifierHashCompleter.idl rename : toolkit/components/url-classifier/public/nsIUrlClassifierStreamUpdater.idl => toolkit/components/url-classifier/nsIUrlClassifierStreamUpdater.idl rename : toolkit/components/url-classifier/public/nsIUrlClassifierTable.idl => toolkit/components/url-classifier/nsIUrlClassifierTable.idl rename : toolkit/components/url-classifier/public/nsIUrlClassifierUtils.idl => toolkit/components/url-classifier/nsIUrlClassifierUtils.idl rename : toolkit/components/url-classifier/public/nsIUrlListManager.idl => toolkit/components/url-classifier/nsIUrlListManager.idl rename : toolkit/components/url-classifier/src/nsURLClassifier.manifest => toolkit/components/url-classifier/nsURLClassifier.manifest rename : toolkit/components/url-classifier/src/nsUrlClassifierDBService.cpp => toolkit/components/url-classifier/nsUrlClassifierDBService.cpp rename : toolkit/components/url-classifier/src/nsUrlClassifierDBService.h => toolkit/components/url-classifier/nsUrlClassifierDBService.h rename : toolkit/components/url-classifier/src/nsUrlClassifierHashCompleter.cpp => toolkit/components/url-classifier/nsUrlClassifierHashCompleter.cpp rename : toolkit/components/url-classifier/src/nsUrlClassifierHashCompleter.h => toolkit/components/url-classifier/nsUrlClassifierHashCompleter.h rename : toolkit/components/url-classifier/src/nsUrlClassifierLib.js => toolkit/components/url-classifier/nsUrlClassifierLib.js rename : toolkit/components/url-classifier/src/nsUrlClassifierListManager.js => toolkit/components/url-classifier/nsUrlClassifierListManager.js rename : toolkit/components/url-classifier/src/nsUrlClassifierStreamUpdater.cpp => toolkit/components/url-classifier/nsUrlClassifierStreamUpdater.cpp rename : toolkit/components/url-classifier/src/nsUrlClassifierStreamUpdater.h => toolkit/components/url-classifier/nsUrlClassifierStreamUpdater.h rename : toolkit/components/url-classifier/src/nsUrlClassifierUtils.cpp => toolkit/components/url-classifier/nsUrlClassifierUtils.cpp rename : toolkit/components/url-classifier/src/nsUrlClassifierUtils.h => toolkit/components/url-classifier/nsUrlClassifierUtils.h rename : toolkit/components/urlformatter/public/nsIURLFormatter.idl => toolkit/components/urlformatter/nsIURLFormatter.idl rename : toolkit/components/urlformatter/src/nsURLFormatter.js => toolkit/components/urlformatter/nsURLFormatter.js rename : toolkit/components/urlformatter/src/nsURLFormatter.manifest => toolkit/components/urlformatter/nsURLFormatter.manifest rename : toolkit/profile/public/nsIProfileMigrator.idl => toolkit/profile/nsIProfileMigrator.idl rename : toolkit/profile/public/nsIToolkitProfile.idl => toolkit/profile/nsIToolkitProfile.idl rename : toolkit/profile/public/nsIToolkitProfileService.idl => toolkit/profile/nsIToolkitProfileService.idl rename : toolkit/profile/src/nsToolkitProfileService.cpp => toolkit/profile/nsToolkitProfileService.cpp
490 lines
18 KiB
C
490 lines
18 KiB
C
//
|
|
// GrowlDefinesInternal.h
|
|
// Growl
|
|
//
|
|
// Created by Karl Adam on Mon May 17 2004.
|
|
// Copyright (c) 2004 the Growl Project. All rights reserved.
|
|
//
|
|
|
|
#ifndef _GROWL_GROWLDEFINESINTERNAL_H
|
|
#define _GROWL_GROWLDEFINESINTERNAL_H
|
|
|
|
#include <CoreFoundation/CoreFoundation.h>
|
|
#include <sys/types.h>
|
|
#include <unistd.h>
|
|
|
|
#ifdef __OBJC__
|
|
#define XSTR(x) (@x)
|
|
#else /* !__OBJC__ */
|
|
#define XSTR CFSTR
|
|
#endif /* __OBJC__ */
|
|
|
|
/*! @header GrowlDefinesInternal.h
|
|
* @abstract Defines internal Growl macros and types.
|
|
* @ignore ATTRIBUTE_PACKED
|
|
* @discussion These constants are used both by GrowlHelperApp and by plug-ins.
|
|
*
|
|
* Notification keys (used in GrowlHelperApp, in GrowlApplicationBridge, and
|
|
* by applications that don't use GrowlApplicationBridge) are defined in
|
|
* GrowlDefines.h.
|
|
*/
|
|
|
|
/*!
|
|
* @defined NSInteger
|
|
* @abstract Typedef to int so Growl will compile on pre-10.5 SDKs.
|
|
*/
|
|
#ifndef NSINTEGER_DEFINED
|
|
typedef int NSInteger;
|
|
typedef unsigned int NSUInteger;
|
|
#define NSINTEGER_DEFINED
|
|
#endif
|
|
|
|
/*!
|
|
* @defined CGFloat
|
|
* @abstract Typedef to float so Growl will compile on pre-10.5 SDKs.
|
|
*/
|
|
#ifndef CGFLOAT_DEFINED
|
|
typedef float CGFloat;
|
|
#define CGFLOAT_IS_DOUBLE 0
|
|
#define CGFLOAT_DEFINED
|
|
#endif
|
|
|
|
/*!
|
|
* @defined GrowlCGFloatCeiling()
|
|
* @abstract Macro for the ceil() function that uses a different precision depending on the CPU architecture.
|
|
*/
|
|
/*!
|
|
* @defined GrowlCGFloatAbsoluteValue()
|
|
* @abstract Macro for the fabs() function that uses a different precision depending on the CPU architecture.
|
|
*/
|
|
/*!
|
|
* @defined GrowlCGFloatFloor()
|
|
* @abstract Macro for the floor() function that uses a different precision depending on the CPU architecture.
|
|
*/
|
|
#if CGFLOAT_IS_DOUBLE
|
|
#define GrowlCGFloatCeiling(x) ceil(x)
|
|
#define GrowlCGFloatAbsoluteValue(x) fabs(x)
|
|
#define GrowlCGFloatFloor(x) floor(x)
|
|
#else
|
|
#define GrowlCGFloatCeiling(x) ceilf(x)
|
|
#define GrowlCGFloatAbsoluteValue(x) fabsf(x)
|
|
#define GrowlCGFloatFloor(x) floorf(x)
|
|
#endif
|
|
|
|
/*! @defined GROWL_TCP_PORT
|
|
* @abstract The TCP listen port for Growl notification servers.
|
|
*/
|
|
#define GROWL_TCP_PORT 23052
|
|
|
|
/*! @defined GROWL_UDP_PORT
|
|
* @abstract The UDP listen port for Growl notification servers.
|
|
*/
|
|
#define GROWL_UDP_PORT 9887
|
|
|
|
/*! @defined GROWL_PROTOCOL_VERSION
|
|
* @abstract The current version of the Growl network-notifications protocol (without encryption).
|
|
*/
|
|
#define GROWL_PROTOCOL_VERSION 1
|
|
|
|
/*! @defined GROWL_PROTOCOL_VERSION_AES128
|
|
* @abstract The current version of the Growl network-notifications protocol (with AES-128 encryption).
|
|
*/
|
|
#define GROWL_PROTOCOL_VERSION_AES128 2
|
|
|
|
/*! @defined GROWL_TYPE_REGISTRATION
|
|
* @abstract The packet type of registration packets with MD5 authentication.
|
|
*/
|
|
#define GROWL_TYPE_REGISTRATION 0
|
|
/*! @defined GROWL_TYPE_NOTIFICATION
|
|
* @abstract The packet type of notification packets with MD5 authentication.
|
|
*/
|
|
#define GROWL_TYPE_NOTIFICATION 1
|
|
/*! @defined GROWL_TYPE_REGISTRATION_SHA256
|
|
* @abstract The packet type of registration packets with SHA-256 authentication.
|
|
*/
|
|
#define GROWL_TYPE_REGISTRATION_SHA256 2
|
|
/*! @defined GROWL_TYPE_NOTIFICATION_SHA256
|
|
* @abstract The packet type of notification packets with SHA-256 authentication.
|
|
*/
|
|
#define GROWL_TYPE_NOTIFICATION_SHA256 3
|
|
/*! @defined GROWL_TYPE_REGISTRATION_NOAUTH
|
|
* @abstract The packet type of registration packets without authentication.
|
|
*/
|
|
#define GROWL_TYPE_REGISTRATION_NOAUTH 4
|
|
/*! @defined GROWL_TYPE_NOTIFICATION_NOAUTH
|
|
* @abstract The packet type of notification packets without authentication.
|
|
*/
|
|
#define GROWL_TYPE_NOTIFICATION_NOAUTH 5
|
|
|
|
#define ATTRIBUTE_PACKED __attribute((packed))
|
|
|
|
/*! @struct GrowlNetworkPacket
|
|
* @abstract This struct is a header common to all incoming Growl network
|
|
* packets which identifies the type and version of the packet.
|
|
*/
|
|
struct GrowlNetworkPacket {
|
|
unsigned char version;
|
|
unsigned char type;
|
|
} ATTRIBUTE_PACKED;
|
|
|
|
/*!
|
|
* @struct GrowlNetworkRegistration
|
|
* @abstract The format of a registration packet.
|
|
* @discussion A Growl client that wants to register with a Growl server sends
|
|
* a packet in this format.
|
|
* @field common The Growl packet header.
|
|
* @field appNameLen The name of the application that is registering.
|
|
* @field numAllNotifications The number of notifications in the list.
|
|
* @field numDefaultNotifications The number of notifications in the list that are enabled by default.
|
|
* @field data Variable-sized data.
|
|
*/
|
|
struct GrowlNetworkRegistration {
|
|
struct GrowlNetworkPacket common;
|
|
/* This name is used both internally and in the Growl
|
|
* preferences.
|
|
*
|
|
* The application name should remain stable between different versions
|
|
* and incarnations of your application.
|
|
* For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0"
|
|
* and "SurfWriter Lite" are not.
|
|
*
|
|
* In addition to being unsigned, the application name length is in
|
|
* network byte order.
|
|
*/
|
|
unsigned short appNameLen;
|
|
/* These names are used both internally and in the Growl
|
|
* preferences. For this reason, they should be human-readable.
|
|
*/
|
|
unsigned char numAllNotifications;
|
|
|
|
unsigned char numDefaultNotifications;
|
|
/* The variable-sized data of a registration is:
|
|
* - The application name, in UTF-8 encoding, for appNameLen bytes.
|
|
* - The list of all notification names.
|
|
* - The list of default notifications, as 8-bit unsigned indices into the list of all notifications.
|
|
* - The MD5/SHA256 checksum of all the data preceding the checksum.
|
|
*
|
|
* Each notification name is encoded as:
|
|
* - Length: two bytes, unsigned, network byte order.
|
|
* - Name: As many bytes of UTF-8-encoded text as the length says.
|
|
* And there are numAllNotifications of these.
|
|
*/
|
|
unsigned char data[];
|
|
} ATTRIBUTE_PACKED;
|
|
|
|
/*!
|
|
* @struct GrowlNetworkNotification
|
|
* @abstract The format of a notification packet.
|
|
* @discussion A Growl client that wants to post a notification to a Growl
|
|
* server sends a packet in this format.
|
|
* @field common The Growl packet header.
|
|
* @field flags The priority number and the sticky bit.
|
|
* @field nameLen The length of the notification name.
|
|
* @field titleLen The length of the notification title.
|
|
* @field descriptionLen The length of the notification description.
|
|
* @field appNameLen The length of the application name.
|
|
* @field data Variable-sized data.
|
|
*/
|
|
struct GrowlNetworkNotification {
|
|
struct GrowlNetworkPacket common;
|
|
/*!
|
|
* @struct GrowlNetworkNotificationFlags
|
|
* @abstract Various flags.
|
|
* @discussion This 16-bit packed structure contains the priority as a
|
|
* signed 3-bit integer from -2 to +2, and the sticky flag as a single bit.
|
|
* The high 12 bits of the structure are reserved for future use.
|
|
* @field reserved reserved for future use.
|
|
* @field priority the priority as a signed 3-bit integer from -2 to +2.
|
|
* @field sticky the sticky flag.
|
|
*/
|
|
struct GrowlNetworkNotificationFlags {
|
|
#ifdef __BIG_ENDIAN__
|
|
unsigned reserved: 12;
|
|
signed priority: 3;
|
|
unsigned sticky: 1;
|
|
#else
|
|
unsigned sticky: 1;
|
|
signed priority: 3;
|
|
unsigned reserved: 12;
|
|
#endif
|
|
} ATTRIBUTE_PACKED flags; //size = 16 (12 + 3 + 1)
|
|
|
|
/* In addition to being unsigned, the notification name length
|
|
* is in network byte order.
|
|
*/
|
|
unsigned short nameLen;
|
|
/* @discussion In addition to being unsigned, the title length is in
|
|
* network byte order.
|
|
*/
|
|
unsigned short titleLen;
|
|
/* In addition to being unsigned, the description length is in
|
|
* network byte order.
|
|
*/
|
|
unsigned short descriptionLen;
|
|
/* In addition to being unsigned, the application name length
|
|
* is in network byte order.
|
|
*/
|
|
unsigned short appNameLen;
|
|
/* The variable-sized data of a notification is:
|
|
* - Notification name, in UTF-8 encoding, for nameLen bytes.
|
|
* - Title, in UTF-8 encoding, for titleLen bytes.
|
|
* - Description, in UTF-8 encoding, for descriptionLen bytes.
|
|
* - Application name, in UTF-8 encoding, for appNameLen bytes.
|
|
* - The MD5/SHA256 checksum of all the data preceding the checksum.
|
|
*/
|
|
unsigned char data[];
|
|
} ATTRIBUTE_PACKED;
|
|
|
|
/*! @defined GrowlEnabledKey
|
|
* @abstract Preference key controlling whether Growl is enabled.
|
|
* @discussion If this is false, then when GrowlHelperApp is launched to open
|
|
* a Growl registration dictionary file, GrowlHelperApp will quit when it has
|
|
* finished processing the file instead of listening for notifications.
|
|
*/
|
|
#define GrowlEnabledKey XSTR("GrowlEnabled")
|
|
|
|
/*! @defined GROWL_SCREENSHOT_MODE
|
|
* @abstract Preference and notification key controlling whether to save a screenshot of the notification.
|
|
* @discussion This is for GHA's private usage. If your application puts this
|
|
* key into a notification dictionary, GHA will clobber it. This key is only
|
|
* allowed in the notification dictionaries GHA passes to displays.
|
|
*
|
|
* If this key contains an object whose boolValue is not NO, the display is
|
|
* asked to save a screenshot of the notification to
|
|
* ~/Library/Application\ Support/Growl/Screenshots.
|
|
*/
|
|
#define GROWL_SCREENSHOT_MODE XSTR("ScreenshotMode")
|
|
|
|
/*! @defined GROWL_APP_LOCATION
|
|
* @abstract The location of this application.
|
|
* @discussion Contains either the POSIX path to the application, or a file-data dictionary (as used by the Dock).
|
|
* contains the file's alias record and its pathname.
|
|
*/
|
|
#define GROWL_APP_LOCATION XSTR("AppLocation")
|
|
|
|
/*! @defined GROWL_REMOTE_ADDRESS
|
|
* @abstract The address of the host who sent this notification/registration.
|
|
* @discussion Contains an NSData with the address of the remote host who
|
|
* sent this notification/registration.
|
|
*/
|
|
#define GROWL_REMOTE_ADDRESS XSTR("RemoteAddress")
|
|
|
|
/*!
|
|
* @defined GROWL_PREFPANE_BUNDLE_IDENTIFIER
|
|
* @discussion The bundle identifier for the Growl preference pane.
|
|
*/
|
|
#define GROWL_PREFPANE_BUNDLE_IDENTIFIER XSTR("com.growl.prefpanel")
|
|
/*!
|
|
* @defined GROWL_HELPERAPP_BUNDLE_IDENTIFIER
|
|
* @discussion The bundle identifier for the Growl background application (GrowlHelperApp).
|
|
*/
|
|
#define GROWL_HELPERAPP_BUNDLE_IDENTIFIER XSTR("com.Growl.GrowlHelperApp")
|
|
|
|
/*!
|
|
* @defined GROWL_PREFPANE_NAME
|
|
* @discussion The file name of the Growl preference pane.
|
|
*/
|
|
#define GROWL_PREFPANE_NAME XSTR("Growl.prefPane")
|
|
#define PREFERENCE_PANES_SUBFOLDER_OF_LIBRARY XSTR("PreferencePanes")
|
|
#define PREFERENCE_PANE_EXTENSION XSTR("prefPane")
|
|
|
|
//plug-in bundle filename extensions
|
|
#define GROWL_PLUGIN_EXTENSION XSTR("growlPlugin")
|
|
#define GROWL_PATHWAY_EXTENSION XSTR("growlPathway")
|
|
#define GROWL_VIEW_EXTENSION XSTR("growlView")
|
|
#define GROWL_STYLE_EXTENSION XSTR("growlStyle")
|
|
|
|
/* --- These following macros are intended for plug-ins --- */
|
|
|
|
/*! @function SYNCHRONIZE_GROWL_PREFS
|
|
* @abstract Synchronizes Growl prefs so they're up-to-date.
|
|
* @discussion This macro is intended for use by GrowlHelperApp and by
|
|
* plug-ins (when the prefpane is selected).
|
|
*/
|
|
#define SYNCHRONIZE_GROWL_PREFS() CFPreferencesAppSynchronize(CFSTR("com.Growl.GrowlHelperApp"))
|
|
|
|
/*! @function UPDATE_GROWL_PREFS
|
|
* @abstract Tells GrowlHelperApp to update its prefs.
|
|
* @discussion This macro is intended for use by plug-ins.
|
|
* It sends a notification to tell GrowlHelperApp to update its preferences.
|
|
*/
|
|
#define UPDATE_GROWL_PREFS() do { \
|
|
SYNCHRONIZE_GROWL_PREFS(); \
|
|
CFStringRef _key = CFSTR("pid"); \
|
|
int pid = getpid(); \
|
|
CFNumberRef _value = CFNumberCreate(kCFAllocatorDefault, kCFNumberIntType, &pid); \
|
|
CFDictionaryRef userInfo = CFDictionaryCreate(kCFAllocatorDefault, (const void **)&_key, (const void **)&_value, 1, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks); \
|
|
CFRelease(_value); \
|
|
CFNotificationCenterPostNotification(CFNotificationCenterGetDistributedCenter(), \
|
|
CFSTR("GrowlPreferencesChanged"), \
|
|
CFSTR("GrowlUserDefaults"), \
|
|
userInfo, false); \
|
|
CFRelease(userInfo); \
|
|
} while(0)
|
|
|
|
/*! @function READ_GROWL_PREF_VALUE
|
|
* @abstract Reads the given pref value from the plug-in's preferences.
|
|
* @discussion This macro is intended for use by plug-ins. It reads the value for the
|
|
* given key from the plug-in's preferences (which are stored in a dictionary inside of
|
|
* GrowlHelperApp's prefs).
|
|
* @param key The preference key to read the value of.
|
|
* @param domain The bundle ID of the plug-in.
|
|
* @param type The type of the result expected.
|
|
* @param result A pointer to an id. Set to the value if exists, left unchanged if not.
|
|
*
|
|
* If the value is set, you are responsible for releasing it.
|
|
*/
|
|
#define READ_GROWL_PREF_VALUE(key, domain, type, result) do {\
|
|
CFDictionaryRef prefs = (CFDictionaryRef)CFPreferencesCopyAppValue((CFStringRef)domain, \
|
|
CFSTR("com.Growl.GrowlHelperApp")); \
|
|
if (prefs) {\
|
|
if (CFDictionaryContainsKey(prefs, key)) {\
|
|
*result = (type)CFDictionaryGetValue(prefs, key); \
|
|
CFRetain(*result); \
|
|
} \
|
|
CFRelease(prefs); } \
|
|
} while(0)
|
|
|
|
/*! @function WRITE_GROWL_PREF_VALUE
|
|
* @abstract Writes the given pref value to the plug-in's preferences.
|
|
* @discussion This macro is intended for use by plug-ins. It writes the given
|
|
* value to the plug-in's preferences.
|
|
* @param key The preference key to write the value of.
|
|
* @param value The value to write to the preferences. It should be either a
|
|
* CoreFoundation type or toll-free bridged with one.
|
|
* @param domain The bundle ID of the plug-in.
|
|
*/
|
|
#define WRITE_GROWL_PREF_VALUE(key, value, domain) do {\
|
|
CFDictionaryRef staticPrefs = (CFDictionaryRef)CFPreferencesCopyAppValue((CFStringRef)domain, \
|
|
CFSTR("com.Growl.GrowlHelperApp")); \
|
|
CFMutableDictionaryRef prefs; \
|
|
if (staticPrefs == NULL) {\
|
|
prefs = CFDictionaryCreateMutable(NULL, 0, NULL, NULL); \
|
|
} else {\
|
|
prefs = CFDictionaryCreateMutableCopy(NULL, 0, staticPrefs); \
|
|
CFRelease(staticPrefs); \
|
|
}\
|
|
CFDictionarySetValue(prefs, key, value); \
|
|
CFPreferencesSetAppValue((CFStringRef)domain, prefs, CFSTR("com.Growl.GrowlHelperApp")); \
|
|
CFRelease(prefs); } while(0)
|
|
|
|
/*! @function READ_GROWL_PREF_BOOL
|
|
* @abstract Reads the given Boolean from the plug-in's preferences.
|
|
* @discussion This is a wrapper around READ_GROWL_PREF_VALUE() intended for
|
|
* use with Booleans.
|
|
* @param key The preference key to read the Boolean from.
|
|
* @param domain The bundle ID of the plug-in.
|
|
* @param result A pointer to a Boolean type. Left unchanged if the value doesn't exist.
|
|
*/
|
|
#define READ_GROWL_PREF_BOOL(key, domain, result) do {\
|
|
CFBooleanRef boolValue = NULL; \
|
|
READ_GROWL_PREF_VALUE(key, domain, CFBooleanRef, &boolValue); \
|
|
if (boolValue) {\
|
|
*result = CFBooleanGetValue(boolValue); \
|
|
CFRelease(boolValue); \
|
|
} } while(0)
|
|
|
|
/*! @function WRITE_GROWL_PREF_BOOL
|
|
* @abstract Writes the given Boolean to the plug-in's preferences.
|
|
* @discussion This is a wrapper around WRITE_GROWL_PREF_VALUE() intended for
|
|
* use with Booleans.
|
|
* @param key The preference key to write the Boolean for.
|
|
* @param value The Boolean value to write to the preferences.
|
|
* @param domain The bundle ID of the plug-in.
|
|
*/
|
|
#define WRITE_GROWL_PREF_BOOL(key, value, domain) do {\
|
|
WRITE_GROWL_PREF_VALUE(key, value ? kCFBooleanTrue : kCFBooleanFalse, domain); } while(0)
|
|
|
|
/*! @function READ_GROWL_PREF_INT
|
|
* @abstract Reads the given integer from the plug-in's preferences.
|
|
* @discussion This is a wrapper around READ_GROWL_PREF_VALUE() intended for
|
|
* use with integers.
|
|
* @param key The preference key to read the integer from.
|
|
* @param domain The bundle ID of the plug-in.
|
|
* @param result A pointer to an integer. Leaves unchanged if the value doesn't exist.
|
|
*/
|
|
#define READ_GROWL_PREF_INT(key, domain, result) do {\
|
|
CFNumberRef intValue = NULL; \
|
|
READ_GROWL_PREF_VALUE(key, domain, CFNumberRef, &intValue); \
|
|
if (intValue) {\
|
|
CFNumberGetValue(intValue, kCFNumberIntType, result); \
|
|
CFRelease(intValue); \
|
|
} } while(0)
|
|
|
|
/*! @function WRITE_GROWL_PREF_INT
|
|
* @abstract Writes the given integer to the plug-in's preferences.
|
|
* @discussion This is a wrapper around WRITE_GROWL_PREF_VALUE() intended for
|
|
* use with integers.
|
|
* @param key The preference key to write the integer for.
|
|
* @param value The integer value to write to the preferences.
|
|
* @param domain The bundle ID of the plug-in.
|
|
*/
|
|
#define WRITE_GROWL_PREF_INT(key, value, domain) do {\
|
|
CFNumberRef intValue = CFNumberCreate(NULL, kCFNumberIntType, &value); \
|
|
WRITE_GROWL_PREF_VALUE(key, intValue, domain); \
|
|
CFRelease(intValue); } while(0)
|
|
|
|
/*! @function READ_GROWL_PREF_FLOAT
|
|
* @abstract Reads the given float from the plug-in's preferences.
|
|
* @discussion This is a wrapper around READ_GROWL_PREF_VALUE() intended for
|
|
* use with floats.
|
|
* @param key The preference key to read the float from.
|
|
* @param domain The bundle ID of the plug-in.
|
|
* @param result A pointer to a float. Leaves unchanged if the value doesn't exist.
|
|
*/
|
|
#ifdef __LP64__
|
|
#define READ_GROWL_PREF_FLOAT(key, domain, result) do {\
|
|
CFNumberRef floatValue = NULL; \
|
|
READ_GROWL_PREF_VALUE(key, domain, CFNumberRef, &floatValue); \
|
|
if (floatValue) {\
|
|
CFNumberGetValue(floatValue, kCFNumberCGFloatType, result); \
|
|
CFRelease(floatValue); \
|
|
} } while(0)
|
|
#else
|
|
#define READ_GROWL_PREF_FLOAT(key, domain, result) do {\
|
|
CFNumberRef floatValue = NULL; \
|
|
READ_GROWL_PREF_VALUE(key, domain, CFNumberRef, &floatValue); \
|
|
if (floatValue) {\
|
|
CFNumberGetValue(floatValue, kCFNumberFloatType, result); \
|
|
CFRelease(floatValue); \
|
|
} } while(0)
|
|
#endif
|
|
|
|
/*! @function WRITE_GROWL_PREF_FLOAT
|
|
* @abstract Writes the given float to the plug-in's preferences.
|
|
* @discussion This is a wrapper around WRITE_GROWL_PREF_VALUE() intended for
|
|
* use with floats.
|
|
* @param key The preference key to write the float for.
|
|
* @param value The float value to write to the preferences.
|
|
* @param domain The bundle ID of the plug-in.
|
|
*/
|
|
#ifdef __LP64__
|
|
#define WRITE_GROWL_PREF_FLOAT(key, value, domain) do {\
|
|
CFNumberRef floatValue = CFNumberCreate(NULL, kCFNumberCGFloatType, &value); \
|
|
WRITE_GROWL_PREF_VALUE(key, floatValue, domain); \
|
|
CFRelease(floatValue); } while(0)
|
|
#else
|
|
#define WRITE_GROWL_PREF_FLOAT(key, value, domain) do {\
|
|
CFNumberRef floatValue = CFNumberCreate(NULL, kCFNumberFloatType, &value); \
|
|
WRITE_GROWL_PREF_VALUE(key, floatValue, domain); \
|
|
CFRelease(floatValue); } while(0)
|
|
#endif
|
|
|
|
|
|
/*! @defined GROWL_CLOSE_ALL_NOTIFICATIONS
|
|
* @abstract Notification to close all Growl notifications
|
|
* @discussion Should be posted to the default notification center when a close widget is option+clicked.
|
|
* All notifications should close in response.
|
|
*/
|
|
#define GROWL_CLOSE_ALL_NOTIFICATIONS XSTR("GrowlCloseAllNotifications")
|
|
|
|
#pragma mark Small utilities
|
|
|
|
/*!
|
|
* @defined FLOAT_EQ(x,y)
|
|
* @abstract Compares two floats.
|
|
*/
|
|
#define FLOAT_EQ(x,y) (((y - FLT_EPSILON) < x) && (x < (y + FLT_EPSILON)))
|
|
|
|
#endif //ndef _GROWL_GROWLDEFINESINTERNAL_H
|