summaryrefslogtreecommitdiffstats
path: root/toolkit/components/mozintl/MozIntl.cpp
diff options
context:
space:
mode:
authorjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-03-30 18:58:51 +0200
committerjanekptacijarabaci <janekptacijarabaci@seznam.cz>2018-03-30 18:58:51 +0200
commitc4aadf04aa9c089c6251478f23e941bfa03b3cad (patch)
tree10081190e622456c1515d4a00f6f99cec52fe44e /toolkit/components/mozintl/MozIntl.cpp
parente25430117a67f5c898e5e9388ebd44b185d469ab (diff)
downloadUXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.tar
UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.tar.gz
UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.tar.lz
UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.tar.xz
UXP-c4aadf04aa9c089c6251478f23e941bfa03b3cad.zip
Bug 1287677 - Add mozIntl.getDisplayNames API
Diffstat (limited to 'toolkit/components/mozintl/MozIntl.cpp')
-rw-r--r--toolkit/components/mozintl/MozIntl.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/toolkit/components/mozintl/MozIntl.cpp b/toolkit/components/mozintl/MozIntl.cpp
index 9c393c296..9c61c73a6 100644
--- a/toolkit/components/mozintl/MozIntl.cpp
+++ b/toolkit/components/mozintl/MozIntl.cpp
@@ -48,6 +48,32 @@ MozIntl::AddGetCalendarInfo(JS::Handle<JS::Value> val, JSContext* cx)
return NS_OK;
}
+NS_IMETHODIMP
+MozIntl::AddGetDisplayNames(JS::Handle<JS::Value> val, JSContext* cx)
+{
+ if (!val.isObject()) {
+ return NS_ERROR_INVALID_ARG;
+ }
+
+ JS::Rooted<JSObject*> realIntlObj(cx, js::CheckedUnwrap(&val.toObject()));
+ if (!realIntlObj) {
+ return NS_ERROR_INVALID_ARG;
+ }
+
+ JSAutoCompartment ac(cx, realIntlObj);
+
+ static const JSFunctionSpec funcs[] = {
+ JS_SELF_HOSTED_FN("getDisplayNames", "Intl_getDisplayNames", 2, 0),
+ JS_FS_END
+ };
+
+ if (!JS_DefineFunctions(cx, realIntlObj, funcs)) {
+ return NS_ERROR_FAILURE;
+ }
+
+ return NS_OK;
+}
+
NS_GENERIC_FACTORY_CONSTRUCTOR(MozIntl)
NS_DEFINE_NAMED_CID(MOZ_MOZINTL_CID);