mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
0fd9123eac
This patch was generated by a script. Here's the source of the script for future reference: function convert() { echo "Converting $1 to $2..." find . ! -wholename "*nsprpub*" \ ! -wholename "*security/nss*" \ ! -wholename "*/.hg*" \ ! -wholename "obj-ff-dbg*" \ ! -name nsXPCOMCID.h \ ! -name prtypes.h \ -type f \ \( -iname "*.cpp" \ -o -iname "*.h" \ -o -iname "*.c" \ -o -iname "*.cc" \ -o -iname "*.idl" \ -o -iname "*.ipdl" \ -o -iname "*.ipdlh" \ -o -iname "*.mm" \) | \ xargs -n 1 sed -i -e "s/\b$1\b/$2/g" } convert PRInt8 int8_t convert PRUint8 uint8_t convert PRInt16 int16_t convert PRUint16 uint16_t convert PRInt32 int32_t convert PRUint32 uint32_t convert PRInt64 int64_t convert PRUint64 uint64_t convert PRIntn int convert PRUintn unsigned convert PRSize size_t convert PROffset32 int32_t convert PROffset64 int64_t convert PRPtrdiff ptrdiff_t convert PRFloat64 double
67 lines
2.3 KiB
C++
67 lines
2.3 KiB
C++
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
#include "nsExternalSharingAppService.h"
|
|
|
|
#include "mozilla/ModuleUtils.h"
|
|
#include "nsIClassInfoImpl.h"
|
|
|
|
#include "AndroidBridge.h"
|
|
#include "nsArrayUtils.h"
|
|
#include "nsISupportsUtils.h"
|
|
#include "nsComponentManagerUtils.h"
|
|
|
|
using namespace mozilla;
|
|
|
|
NS_IMPL_ISUPPORTS1(nsExternalSharingAppService, nsIExternalSharingAppService)
|
|
|
|
nsExternalSharingAppService::nsExternalSharingAppService()
|
|
{
|
|
}
|
|
|
|
nsExternalSharingAppService::~nsExternalSharingAppService()
|
|
{
|
|
}
|
|
|
|
NS_IMETHODIMP
|
|
nsExternalSharingAppService::ShareWithDefault(const nsAString & data,
|
|
const nsAString & mime,
|
|
const nsAString & title)
|
|
{
|
|
NS_NAMED_LITERAL_STRING(sendAction, "android.intent.action.SEND");
|
|
const nsString emptyString = EmptyString();
|
|
if (AndroidBridge::Bridge())
|
|
return AndroidBridge::Bridge()->
|
|
OpenUriExternal(NS_ConvertUTF16toUTF8(data), NS_ConvertUTF16toUTF8(mime),
|
|
emptyString,emptyString, sendAction, title) ? NS_OK : NS_ERROR_FAILURE;
|
|
|
|
return NS_ERROR_FAILURE;
|
|
}
|
|
|
|
NS_IMETHODIMP
|
|
nsExternalSharingAppService::GetSharingApps(const nsAString & aMIMEType,
|
|
uint32_t *aLen,
|
|
nsISharingHandlerApp ***aHandlers)
|
|
{
|
|
nsresult rv;
|
|
NS_NAMED_LITERAL_STRING(sendAction, "android.intent.action.SEND");
|
|
nsCOMPtr<nsIMutableArray> array = do_CreateInstance(NS_ARRAY_CONTRACTID, &rv);
|
|
NS_ENSURE_SUCCESS(rv, rv);
|
|
NS_ConvertUTF16toUTF8 nMimeType(aMIMEType);
|
|
if (!AndroidBridge::Bridge())
|
|
return NS_OK;
|
|
AndroidBridge::Bridge()->GetHandlersForMimeType(nMimeType.get(), array,
|
|
nullptr, sendAction);
|
|
array->GetLength(aLen);
|
|
*aHandlers =
|
|
static_cast<nsISharingHandlerApp**>(NS_Alloc(sizeof(nsISharingHandlerApp*)
|
|
* *aLen));
|
|
for (int i = 0; i < *aLen; i++) {
|
|
rv = array->QueryElementAt(i, nsISharingHandlerApp::GetIID(),
|
|
(void**)(*aHandlers + i));
|
|
NS_ENSURE_SUCCESS(rv, rv);
|
|
}
|
|
return NS_OK;
|
|
}
|