* Add system font overflow
1. currently only iOS, Mac and Android platform are supported
add mac label overflow shrink
modify system font overflow test
fix warning and possible memory leaks
add ios system label overflow support
add iOS system font overflow support
fix iOS system font overflow
fix Mac System font overflow
add android system font clamp
add Android system font shrink
cleanup iOS shrink related code
fix Android system font clamp
add core text to project template
fix iOS tests project
fix mac and iOS shrink
improve iOS and Mac clamp feature
fix header file include path
* modify the comments, make it more clearer
* Add OBB support.
OBB must be a zip file with audio and video files stored uncompressed.
* Use introspection to be able to build with Android API level 10.
Using the new audio engine to play sounds from the OBB will only work with API level 12 (Android 3.1) or above.
When the AssetManagerEx start downloading, it used to create all the
download tasks all at once. When the app has a large number of asset
files, it is likely to crash due to out of memory when creating
threads for each of the download tasks. This commit adds a buffer
queue to the downloader to use the `countOfMaxProcessingTasks`
property from hints, preventing all the tasks from starting all at once.
I disable a optimization when users start to type, the resize layout's
doLayout event should be stoped.
But it has bugs. If we could find reliable soft keyboard show/hide
event detection method, we could enable this optimization again.
This PR also fixed issue:
https://github.com/cocos2d/cocos2d-x/issues/9572
For the new EditBox:
1. Added a ResizeLayout for updating layout when soft keyboard is shown.
This is because some Android devices won't refresh the view and when
the view is panned, the native EditText will turn black. This is really
a hack, but it works for many Android devices from 2.3 to 5.0.
When keyboard is beginning to show, the ResizeLayout's doLayout
method will be called 24 frames per second. Once the keyboard is closed,
or the user begins to input, the doLayout method will be disabled.
2. EditText is working in a different UI thread, so all the data
are passed to GL thread via callbacks in UI thead.
3. It also overrides onKeyDown method in Cocos2dxEditBox.
When the EditText got the focus, users could press back key to exit
the game. This behavior is not allowed. We give developer the choice to
handle back key event manually.