What are the supported browsers and devices for Google's Closure Javascript library? - google-closure-library

Where do you find out if Android, Safari (iOs) etc are supported by the Google Closure libraries?

GCL supports all of them. That is the nice thing about GCL, a platform independent Library, that abstracts nasty platform/browser specific bugs.

I found the following way to search the source code, where you can look for words like iPhone etc to see what specific handling they have for specific devices.
Code search for iphone: http://www.google.com/codesearch#search/&q=iphone%20package:http://closure-library%5C.googlecode%5C.com
Although searching for blackberry doesn't return anything, which means that it doesn't cater for Blackberry's Javascript?

Related

Read existing SMS using Xamarin Forms

I am new to Xamarin. Can someone point me to a way to read existing SMSs using Xamarin Forms.
I know we can do it using Android specific libraries (and probably with iOS specific libraries as well). But, I want to use a library that will help me avoid using platform specific library.
You will have to use platform specific code for this. Remember; all libraries out there actually are platform specific code but just offer you an abstraction. This includes Xamarin.Forms itself.
As mentioned by Jason in the comments, you aren't going to be able to do this on iOS altogether, they do not allow to read or sends texts directly. So you should probably rethink what you are trying to do.

Fulfilling differing Android / iOS UI conventions from a single React Native codebase?

Is this even possible?
Every overview / analysis of React Native I've found covers the basic reasons for using RN, and is either old (no Android, or "Android just released") or focuses on the fact that it compiles to native elements (ie. not HTML5)
What I'm missing is, how does an app built in React Native fulfill the style guides, conventions, and user expectations of how apps on each platform are supposed to behave? I don't want to make an Android app that looks like an iOS app, or vise versa.
As #jevakallio answered you can customize you UI to platform specific rules from Google or Apple.
Technically it can be done in several ways. If differences are small you can make conditional check with Platform module:
if (Platform.OS === 'ios') {
...
} else {
...
}
If differences are big then use file postfix (android or ios):
MyComponent.ios.js
MyComponent.android.js
https://facebook.github.io/react-native/docs/platform-specific-code.html
You even can make full different UI for each platform or device type (tablet or phone) saves all non-UI logic common.
The seminal resources for platform-specific style and interaction guides are the Material Design system for Android and the Human Interface Guidelines for iOS.
Implementing iOS-feeling UX on React Native is quite simple out of the box. Android apps may benefit from using react-native-material-design package to get native feeling controls.
One of the biggest challenges for web developers coming to mobile development via React Native (I am one) is to know what makes that native feel. This is a very subjective and touchy-feely topic, and cannot be easily solved by reading guides or applying logical engineering mindset to the problem.
I have found that using tons of popular apps and trying to reason about what makes them tick is a invaluable practice for this, as is critically evaluating your own work and putting time and care to details, as sometimes that is what makes all the difference.

Compiling WebKit for Windows8-Metro Environment

I would like to ask the SO community for the following information:
- Is it possible to compile WebKit for Windows8-Metro Environment, either in the form of a WinRT component or just as a linked library in a C++/XAML application?
- Which are the main steps to achieve this goal?
- Which are the possible things that would make this not possible or very difficult?
- Is it an endeavour someone is working on just now?
- Is it possible to gather interested people so they work on this?
I think you will not be able to just "compile" Webkit for WinRT/Metro Style. Metro Style applications are restricted in the kind of API calls they can make, for example there is no GDI/GDI+/MFC for WinRT. WebKit has several building modes that you can use, you can either build it using QT as rendering engine, or using GTK, or plain GDI, but on all those cases, when you create new builds for Windows OSes you will be using GDI at the very end.
Nevertheless, you could modify Webkit source code and add a new rendering engine that uses WinRT new APIs. You could probably become famous if you do.
As a side note, even when there is a "Windows Store" version of Chrome, by looking at the source code of Chromium it seems to me that this version is just a simple app launcher that communicates with the "normal" desktop version using an IPC channel. It does not appear to be a real Windows Store build of the whole source code.
I am not sure if the WinRT environment will allow this, but there is a project called Awesomium that is a wrapper around Google Chrome and Google Chrome is based on WebKit I think. It also has a .NET wrapper, so you can embedd it onto your .NET app.
I never tried using it, neither I know about if this library is applicable with WinRT, but at least it is a start.
Awesomium
Awesomium .NET samples
DownMakerWPF, an application embedding it to display markdown.
WinRT is a combination of managed and native code, so, you have a chance to port WebKit, but remember - native code have some sandbox restrictions.
Also you can choose XNA instead.

Cross platform 2D graphics/game library

I'm looking for suggestions for a 2d game engine or library. I'm not picky about the language used but more about the capabilities of the library and the platforms it works on.
I would like to write one code base that would work on iOS, OSX, Android, Win and *nix. I understand there would be some platform specific code but I would like the bulk to be useable on all platforms.
I have looked around and I have some ideas but I'm looking for other opinions. Anyone have any ideas?
SDL(Simple DirectMedia Layer) http://www.libsdl.org/
Here's a link to a list of game engines that might suit your needs.
I truly do not know if such a engine/framework exists. I think you are going to have to sacrifice a platform or two.
PyGame will run on everything you mentioned besides iOS.
http://www.pygame.org/news.html
That would be where I would start.
V-Play (I am part of the developer team) supports all your mentioned platforms from a single code base. A wide range of tutorials, examples, demos and full source code of some games that are already live in the App Stores will help you get started quickly.

How can I embed firefox in a GUI application?

Has anyone ever embedded the firefox web browser technology in their own [unmanaged] C/C++ GUI application in the same way that IE can be embedded as a COM object? (I would like to do this on Linux, not Windows). Are there "better" alternatives to firefox? I'm open to anything as long as I can use it with non-GPL code. My needs are fairly basic; I only need fundamental HTML parsing and display of static local files, but I'd take advantage of more sophisticated technology, if I can get it. I'd like to be able to use JavaScript, but I can get by without it.
First you need to differentiate between HTML engine and JavaScript Engine.
Firefoxs HTML rendering engine is called Gecko. And here is a guide about Embedding Gecko in your application.
Firefoxs JavaScript engine is called SpiderMonkey and here is How to Embed SpiderMonkey in your C application
Check out webkitgtk. It's not Gecko, but Webkit based. It basically provides a web browser widget that can be used in GTK+ applications. If you want to embed mozilla, there are things in the mercurial repositories for Mozilla repository that let you do it, but it didn't seem heavily supported last I checked.
as stated by Mozilla
Embedding of Gecko is no longer supported
so have a look on either previous mentioned Chromium Embedded Framework or WebKit. Alternatively, you can follow Mozilla's new project https://servo.org/.
You will find some more up to date information on Is it possible to Embed Gecko or Webkit in a Windows Form just like a WebView?
It is possible to use parts of Firefox (such as the Gecko renderer) in other apps. There are various approaches to this, including wxWebConnect, a web browser control for wxWidgets. See also Embedding Gecko
Another popular solution is WebKit. Again, there are various ways you can use this, including QtWebKit (a wrapper for the Qt toolkit) and webkitgtk (already mentioned by SB).
Have a look at CEF (Chromium Embedded Framework). It is very similar to WebKit and it also has built-in HTML and JavaScript engines embedded but has better WebGL and HTML5 Canvas support. It is released under BSD license.

Resources