Compare commits

...

286 Commits
r0.3.1 ... v6

Author SHA1 Message Date
zher52
bbcf0fc781 rm 删除之前自定义的主题 2020-09-24 16:03:39 +08:00
zher52
213c8e2217 Merge remote-tracking branch 'upstream/master' into v6 2020-09-24 14:48:40 +08:00
Tim Brust
7e5b4fd93d ci(travis): updates Android API level (#292) 2020-08-21 14:35:18 +00:00
Hans Krywalsky
14d17c5c64 (docs): Add Information about how to use Dark Mode SplashScreens (#286) 2020-08-08 21:13:48 +09:00
Erisu
f41610c2f7 Increment package version to 6.0.1-dev 2020-07-20 14:04:11 +09:00
Erisu
a9e73eb642 Updated version and RELEASENOTES.md for release 6.0.0 (splashscreen-20200707) 2020-07-07 14:46:31 +09:00
エリス
faa8aa937d fix: js clobber only on supported platforms (#282) 2020-07-07 12:08:11 +09:00
Tim Brust
3389695fc5 chore: adds package-lock file (#281) 2020-07-03 14:44:56 +00:00
エリス
2ee4ff97ff doc(android): various improvements including size specs (#280)
* Add size specs for Android Splash Screens
* doc(android): add splashscreen details

Co-authored-by: Mosab A <47486787+mosabab@users.noreply.github.com>
2020-06-30 22:46:35 +09:00
Jan Piotrowski
050f29cfca fix(windows): implementation structure (#200) 2020-06-26 21:42:45 +09:00
エリス
b893339a98 chore: add missing supported platform browser to npm keywords (#279) 2020-06-26 20:55:08 +09:00
jcesarmobile
3ede66ef8f chore: update engine checks to cover newer versions (#278) 2020-06-26 13:05:31 +02:00
エリス
893ba08e8f breaking: replace jshint with eslint (#277)
* breaking: remove jshint files and references
* breaking: swap jshint with eslint
* chore: apply eslint auto corrections
* chore: remove jslint inline ignore rule
2020-06-26 19:31:02 +09:00
エリス
369f8d148f breaking: drop node engine requirement (#276) 2020-06-26 18:55:53 +09:00
エリス
0fba4f31dd chore: cleanup repo (#275)
* chore: remove ubuntu from supported platforms list
* chore: remove old wp platform unused src code
* chore: remove old wp platform reference
* chore: update urls to projects issue & git repo
* style: fix indention
2020-06-26 17:08:41 +09:00
エリス
097ca6ac42 breaking: bump engine restriction for cordova dependencies (#274) 2020-06-26 17:07:57 +09:00
エリス
d85e440e15 breaking: remove ios platform code from plugin repo (#263)
* breaking: remove iOS platform code from plugin repo
* chore: update README.md, remove iOS legacy SplashScreen information
* chore: simplify local browser tests

Note: Even though the implementation of the iOS SplashScreen is integrated into the core of cordova-ios, the documentation is left in this repo. This is because all of the SplashScreen documentation is grouped together on cordova.io and that documentation is pulled from this repo.
2020-06-26 11:56:55 +09:00
エリス
3d66c880bc breaking: bump version 6.0.0-dev (#262) 2020-06-25 23:25:33 +09:00
エリス
048702cb9c test: force cordova-ios@^5.1.1 (#267) 2020-06-06 23:34:40 +09:00
Niklas Merz
c1ab711039 Incremented plugin version to -dev (5.0.5-dev) 2020-06-03 20:01:06 +02:00
Niklas Merz
5bc7d0d63f Updated version and RELEASENOTES.md for release 5.0.4 (5.0.4) 2020-06-03 19:48:17 +02:00
エリス
ed1db6650c chore: add cordova-ios requirement <6.0.0 (#261) 2020-06-01 16:30:24 +09:00
Erisu
ed30498177 chore(asf): update git notification settings 2020-04-22 13:42:38 +09:00
Niklas Merz
06a76567b9 Update CONTRIBUTING.md 2020-04-13 14:32:32 +02:00
zher52
94631e171a 修改参数名称 2020-04-02 09:52:56 +08:00
zher52
db3adec857 添加全屏参数 更新readme 2020-04-02 09:28:04 +08:00
zher52
d3ea3d1771 处理app打开时黑屏的问题 2020-04-01 16:56:56 +08:00
Tim Brust
35c41091d1 chore(npm): adds ignore list (#251) 2020-03-28 15:30:39 +00:00
Tim Brust
46acbadd70 ci: updates Node.js versions (#252) 2020-03-28 15:30:26 +00:00
Peter Maatman
054387e02a Fix #235: update homepage to github readme page (#236) 2020-01-12 14:30:00 -04:00
Mosab A
a7706fef58 Update readme.md by adding missing info (#239)
* Update readme.md by adding missing info

* Update README.md

* Update README.md

* Update README.md

* Update text as standard

* Update README.md

* Update README.md
2020-01-12 10:46:24 -04:00
zher52
0ffc88915b 设置为全屏展示 2019-11-14 15:18:03 +08:00
Jan Piotrowski
be85a1b14e ci(travis): Upgrade node from 6 to 8 2019-07-02 20:59:02 +02:00
Jan Piotrowski
7936e7ea54 ci(travis): Remove Android 4.4, Add Android 9.0 2019-06-18 15:44:40 +02:00
Jan Piotrowski
0934d126d2 Travis CI: Add ADDITIONAL_TESTS_DIR=./tests/ios (#212)
* ADDITIONAL_TESTS_DIR=./tests/ios

* add actual code to run it
2019-05-11 00:33:14 +02:00
Jan Piotrowski
e44f9d1f1f Incremented plugin version. (splash20190509) 2019-05-09 22:43:34 +02:00
Jan Piotrowski
5339fcf377 Updated version and RELEASENOTES.md for release 5.0.3 (splash20190509) 2019-05-09 22:41:12 +02:00
Jan Piotrowski
49769ba2d4 Remove unsupported iOS10 Saucelabs simulator 2019-05-09 20:18:07 +02:00
Jan Piotrowski
6800de23b1 CI: Use universal paramedic travis.yml (#210) 2019-05-08 17:48:57 +02:00
エリス
76bec98b94 Revert Paramedic Dev Branch Usage (#208) 2019-05-07 16:45:26 +09:00
Jan Piotrowski
61e353f549 Improve README (#198)
* fix indentation

* add TOC

* fix more indentation and remove JIRA link

* apply changes from https://github.com/apache/cordova-plugin-splashscreen/pull/98

via @RobPosener

* add headline, resort

* remove outdated README translations

* remove outdated test README translations as well

* rework introduction

* optimize caPiTaLiZatiOn

* fix

* remove diff to native splash
2019-05-06 18:27:08 +02:00
エリス
4d8cd6f2fe Updated Travis CI Settings and Package.json (#194)
* Update NPM Package Node Requirement and Others

* Update Travis CI Config

* Stopped Local Tests from Running Sauce Tests with Wildcard Flag
2019-05-04 00:46:47 +02:00
Jan Piotrowski
8490496c0b Add or update GitHub pull request and issue template 2019-02-11 18:40:29 +01:00
Jan Piotrowski
95f91bf50c remove JIRA link 2018-10-04 01:17:00 +02:00
Jan Piotrowski
e78f1d10b1 also accept terms for android sdk android-27 2018-10-01 12:36:38 +02:00
jcesarmobile
8ba8f41637 Merge pull request #138 from adamschachne/master
Fixed docs typo
2018-07-31 00:47:48 +02:00
jcesarmobile
91a8210890 Merge pull request #149 from mmig/CB-12277
CB-12277: (android) avoid NullPointerException  when removing splash-screen
2018-07-31 00:22:48 +02:00
russa
c95a26ab34 Merge branch 'master' into CB-12277 2018-05-22 12:43:52 +02:00
Suraj Pindoria
d96c08e00b CB-13826 Incremented plugin version. 2018-01-25 11:47:20 -08:00
Suraj Pindoria
09e1f06fb0 CB-13826 Updated version and RELEASENOTES.md for release 5.0.2 2018-01-25 11:41:07 -08:00
russa
f9c88b8ab8 CB-12277: (android) avoid NullPointerException on splashImageView when removing splashscreen 2018-01-25 18:18:40 +01:00
jcesarmobile
9a6ff27008 Merge pull request #147 from jcesarmobile/CB-13750
CB-13750: Add build-tools-26.0.2 to travis
2018-01-09 23:33:21 +01:00
Julio César
cadc68f75b CB-13750: Add build-tools-26.0.2 to travis 2018-01-09 20:23:26 +01:00
jcesarmobile
be8be330ac Merge pull request #146 from jcesarmobile/CB-13737
CB-13737 (iOS): fix Splash screen images for iPhone X
2018-01-09 20:00:00 +01:00
Julio César
4ffaaa2952 CB-13737 (iOS): fix Splash screen images for iPhone X 2018-01-07 17:30:23 +01:00
jcesarmobile
b5e0c786c5 Fix release notes (#145) 2017-12-30 00:54:06 -05:00
Simon MacDonald
5197c664c3 Set VERSION to 5.0.2-dev (via coho) 2017-12-27 19:13:50 -05:00
Simon MacDonald
fb606fec6a CB-13714 Updated version and RELEASENOTES.md for release 5.0.1 (via coho) 2017-12-27 19:13:36 -05:00
jcesarmobile
57b553a68e CB-13709: Fix to allow 5.0.0 version install (#144) 2017-12-27 10:50:30 -05:00
Steve Gill
031afc5056 Set VERSION to 5.0.1-dev (via coho) 2017-12-15 17:26:45 -08:00
Steve Gill
36bf91c9e8 CB-13681 Updated version and RELEASENOTES.md for release 5.0.0 (via coho) 2017-12-15 17:25:13 -08:00
Vishal Mishra
a606af98ca Merge pull request #143 from maverickmishra/master
CB-13677: Remove deprecated platforms
2017-12-13 23:20:58 -08:00
maverickmishra
2ae821c4a8 CB-13677: Remove deprecated platforms 2017-12-13 11:39:44 -08:00
Steve Gill
36c43827bb Set VERSION to 4.1.1-dev (via coho) 2017-11-06 14:38:40 -08:00
Steve Gill
326f13220e CB-13542 Updated version and RELEASENOTES.md for release 4.1.0 (via coho) 2017-11-06 14:37:46 -08:00
Adam Schachne
5f41762722 Fixed docs typo 2017-10-22 15:57:59 -07:00
Alexander Sorokin
5ca43e8c5d CB-13473: (CI) Removed browser builds from AppVeyor 2017-10-20 10:23:27 +03:00
Alexander Sorokin
278c5d8168 CB-13472: (CI) Fixed Travis Android builds again 2017-10-20 08:59:26 +03:00
MartijnW49
7cb318727b Update readme
This closes #116
2017-10-18 14:21:52 -07:00
MartijnW49
c2c3a980e1 Tabs to spaces 2017-10-18 14:21:51 -07:00
MartijnW49
1a4b51fbc8 CB-12011: (android) added the possibility to change the spinner color on Android 5.0+ apps 2017-10-18 14:21:51 -07:00
Joe Bowser
0b75c1faa0 This closes #85 2017-10-10 14:15:58 -07:00
Joe Bowser
09e95a2628 This closes #81 2017-10-10 14:14:13 -07:00
Joe Bowser
3180758a4e This closes #132 2017-10-10 14:08:31 -07:00
Andrea Lazzarotto
50a55883d3 CB-12626: Updated Android plugin
This closes #125

Prefer a slightly slower, but bulletproof, way to check for the splashscreen instead of relying on the Cordova preferences. This fixes the splash screen on several phones.
2017-10-05 14:05:50 -07:00
Andrea Lazzarotto
833dc7f783 Samsung crash quick-n-dirty fix 2017-10-05 13:57:45 -07:00
Alexander Sorokin
e443871785 CB-13299 (CI) Fix Android builds 2017-09-19 09:07:06 +03:00
Alexander Sorokin
fcef678a7f CB-13028 (CI) Browser builds on Travis and AppVeyor 2017-07-28 14:22:12 +03:00
Andrey Sharapov
e5c6772f17 CB-13094: (android) Don't show splash when activity being finished 2017-07-24 16:36:34 +04:00
filmaj
7c0ab0fa51 Closes #109 2017-07-18 21:26:05 -07:00
Alexander Sorokin
7735ae0598 CB-11487 (browser) Documented AutoHideSplashScreen for browser
this closes #107
2017-07-11 11:56:02 +03:00
Peter (Somogyvari) Metz
b0e1157c8a CB-11488 (browser) Guarding code against the case when deviceready fires earlier than the plugin init on cold-start 2017-07-11 10:55:19 +03:00
Peter (Somogyvari) Metz
a18cc8241a CB-11488 (browser) The hide() call became non re-entrant after the addition of fade out. This fixes the issue. 2017-07-11 10:55:18 +03:00
Peter (Somogyvari) Metz
bf9607e27f CB-11488 (browser) Added a 1 second long fade out to the splash screen instead of the hard remove from the DOM whenever hide() is called.
Also made a high z-index the default. This could be added from the user's stylesheets but if that only
gets parsed later, there may be flickering between the application UI and the splash screen itself.
2017-07-11 10:55:18 +03:00
Peter (Somogyvari) Metz
87d29ad6d3 CB-11487 (browser) The "standard" AutoHideSplashScreen config.xml property is now supported by the browser platform. 2017-07-11 10:55:18 +03:00
Peter (Somogyvari) Metz
2db7bac571 CB-11486 (browser) splashScreenDelay now feed through parseInt to ensure it's an integer by the time it's value is passed in to setTimeout() in hide(). 2017-07-11 10:55:17 +03:00
Alexander Sorokin
d6db9f3459 CB-13000: (CI) Speed up android builds 2017-07-10 10:34:56 +03:00
Alexander Sorokin
be635a36c1 CB-12991: (CI) Updated CI badges 2017-07-07 11:36:52 +03:00
Alexander Sorokin
d63786d33b CB-12935: (windows) Enable paramedic builds on AppVeyor 2017-06-30 09:32:26 +03:00
Alexander Sorokin
98f83fea5a CB-12935: (ios, android) Enable paramedic builds on Travis CI 2017-06-27 08:40:39 +03:00
jab
c81df6f274 CB-12947: (docs) Fix iPhone 5 and 5s resolution
(and add iPhone SE which was missing)
2017-06-23 11:39:29 -04:00
filmaj
ffda2e81b9 CB-12847: added bugs entry to package.json. 2017-05-25 19:03:13 +02:00
filmaj
e0cf396835 Close #126 2017-05-23 21:10:42 +02:00
filmaj
7f140e0176 Set VERSION to 4.0.4-dev (via coho) 2017-04-27 13:05:10 -07:00
filmaj
85aa605a12 CB-12736 Updated version and RELEASENOTES.md for release 4.0.3 (via coho) 2017-04-27 13:05:08 -07:00
Alexander Sorokin
7c687957f8 CB-12622 Added Android 6.0 build badge to README 2017-04-26 16:30:20 +03:00
Steve Gill
13849c3d20 CB-12685: added package.json to tests folder 2017-04-21 19:26:24 -07:00
Steve Gill
90ba3dfc5b Set VERSION to 4.0.3-dev (via coho) 2017-03-02 15:26:49 -08:00
Steve Gill
b1ceb532f8 CB-12519 Updated version and RELEASENOTES.md for release 4.0.2 2017-02-28 17:41:27 -08:00
daserge
1185561549 CB-12353 Corrected merges usage in plugin.xml 2017-01-20 14:57:35 +03:00
Nikita Matrosov
894d164191 CB-12369: Add plugin typings from DefinitelyTyped
This closes #123
2017-01-20 11:56:43 +03:00
Alexander Sorokin
caa5534c0d CB-12363 Added build badges for iOS 9.3 and 10.0 2017-01-18 13:38:07 +03:00
Shazron Abdullah
a922ce0453 CB-12236 - Fixed RELEASENOTES for cordova-plugin-splashscreen 2016-12-11 12:58:03 -08:00
Alexander Sorokin
6195d6741b CB-12230 Removed Windows 8.1 build badges 2016-12-09 13:58:36 +03:00
Shazron Abdullah
0f2a069588 CB-12224 Incremented plugin version. 2016-12-07 16:55:08 -08:00
Shazron Abdullah
782939f7ef CB-12224 Updated version and RELEASENOTES.md for release 4.0.1 2016-12-07 16:39:46 -08:00
daserge
04667e04c0 CB-11751 'extendedSplashScreen' is undefined
Document that splashscreen needs to be disabled on Windows in case of updating entire document body
2016-12-02 17:27:37 +03:00
daserge
de28cf89bf CB-9287 Not enough Icons and Splashscreens for Windows 8.1 and Windows Phone 8.1
Documented MRT-style configuration
2016-11-25 13:40:06 +03:00
Shazron Abdullah
770c264d2c CB-11917 - Remove pull request template checklist item: "iCLA has been submitted…"
This closes #115
2016-10-04 21:36:47 -07:00
Kerri Shotts
5a1ade6114 CB-11830 (iOS) Fix doc typos in PR#114 2016-09-29 12:06:07 -05:00
Kerri Shotts
62509f6b47 CB-11829 (iOS) Support for CB-9762; docs (CB-11830)
This closes #114
2016-09-28 11:52:02 -05:00
Steve Gill
2eb78b3724 CB-11832 Incremented plugin version. 2016-09-09 16:08:04 -07:00
Steve Gill
6e43615e25 CB-11832 Updated version and RELEASENOTES.md for release 4.0.0 2016-09-08 23:38:55 -07:00
Vladimir Kotikov
ac39b04b6f CB-11795 Add 'protective' entry to cordovaDependencies
The entry is required to protect end-users from fetching edge versions of the plugin by incompatible version of cordova. This also assumes that we will not introduce any regressions in compatibility w/ cordova in minor and patch releases. On every major release we will need to add similar entry with _next_ major version.

 This closes #113
2016-09-08 12:01:36 +03:00
Julio César
66f7ee34d1 Closing outdated pull request: close #106 2016-08-26 20:48:18 +02:00
Vladimir Kotikov
41ca5809b1 CB-11326 Prevent crash when initializing plugin after navigating to another URL 2016-07-21 23:08:02 +03:00
Franco Bugnano
0a8b5be3d1 Fix crash on iOS when reloading page from remote Safari
This closes #110
2016-07-21 21:39:41 +02:00
Vladimir Kotikov
d65c0c7cc5 Add badges for paramedic builds on Jenkins 2016-06-10 12:12:56 +03:00
Nikhil Khandelwal
4102589bd5 Add pull request template. 2016-05-23 13:54:00 -07:00
daserge
1eac08c558 CB-11179 Extend the windows-splashscreen docs
Documented a way to disable splashscreen
2016-05-12 17:57:30 +03:00
daserge
80b01049c8 CB-11159 Fix flaky splashscreen native tests
Adds a retry as a temporary measure
2016-05-12 15:00:00 +03:00
daserge
4adff6f1c9 CB-11156 Change default FadeSplashScreenDuration value 2016-05-12 15:00:00 +03:00
daserge
3d924fce1b CB-8056 Updated the dependency version, added it to the docs 2016-04-29 16:26:20 +03:00
Dmitry Blotsky
6a737203da CB-10996 Adding front matter to README.md 2016-04-22 19:35:51 -07:00
daserge
acb45f3a38 CB-8056 Implement splashscreen for Windows platform
The plugin implementation has been moved to the platform code
Documented SplashScreenBackgroundColor preference for Windows
Updated the docs
Updated plugin dependencies - cordova-windows@5 is required
Updated the plugin version to 4.0.0
2016-04-22 18:20:28 +03:00
daserge
8d66b9e353 CB-6498 Misleading documentation in Android Quirks 2016-04-19 15:03:04 +03:00
Steve Gill
edb6c3d6f8 CB-11091 Incremented plugin version. 2016-04-15 13:45:27 -07:00
Steve Gill
14061d1999 Updated version and RELEASENOTES.md for release 3.2.2 2016-04-15 13:08:27 -07:00
weexpectedTHIS
6863886d74 Fixed misspelling in the README
Github: close #88
2016-03-31 16:09:59 +03:00
daserge
9832d2e165 CB-10979 Fix splashscreen ios native tests
Added jshintignore for tests/ios
2016-03-30 10:12:25 +03:00
Jeroen Verhoest
bea0a4e408 CB-10895 Transparent Splashscreen view sometimes remains
github: close#92
2016-03-24 16:33:23 +03:00
daserge
41d9ae94ff CB-10562 hide() not working in latest splashscreen plug in 3.1.0 in iOS 2016-03-24 16:19:19 +03:00
Sarangan Rajamanickam
9ca15db91a CB-10688:Plugin Splashscreen Readme must have examples. This closes #90 2016-03-21 15:04:56 -07:00
daserge
f8311aaca8 CB-10864 Run ios native tests on Travis
Updated cordova-ios tests dependency version to latest published
2016-03-14 20:30:52 +03:00
Carlos Santana
abbb07e5ee clean up release notes 2016-03-10 13:56:59 -05:00
Carlos Santana
2012ba9ab6 CB-10820 Incremented plugin version. 2016-03-09 22:34:18 -05:00
Carlos Santana
e877722bac CB-10820 Updated version and RELEASENOTES.md for release 3.2.1 2016-03-09 22:14:25 -05:00
Dan Polivy
617ad81090 CB-10692 Don't fade when plugin is forced to close
The fading logic exposed a race condition in an edge case when the
plugin was repeatedly reinitialized, e.g. when the WebView tries to load
a new URL. To address this, we add a flag to removeSplashScreen() that
allows the fade logic to be bypassed in certain circumstances --
specifically, when hiding the splashscreen due to onPause or onDestroy
events. By hiding it immediately in this scenario, we can avoid any race
conditions due to the fade delay.

github: close #86
2016-03-09 23:13:19 +03:00
Sarangan Rajamanickam
03ea0a4e80 CB-10764: Remove emoji in cordova-plugin-splashscreen
Removing warning emoji
2016-03-02 17:36:23 -08:00
daserge
850159490c CB-10650 Non-index content.src causes Splashscreen to be not displayed on browser 2016-02-19 16:10:17 +03:00
daserge
5ea854d8c3 CB-10636 Add JSHint for plugins
Fixed autotests
2016-02-19 12:18:29 +03:00
Edna Morales
e401a4de0f CB-10606 fix deprecation warning for interfaceOrientation
This closes #82
2016-02-15 19:34:38 -05:00
t1st3
2e1ec32916 chore: edit package.json license to match SPDX id
See [NPM package.json spec for licenses](https://docs.npmjs.com/files/package.json#license) and [SPDX license IDs](https://spdx.org/licenses/)

X-ref: https://github.com/apache/cordova-plugin-device/pull/48

This closes #79
2016-02-10 13:21:19 +10:00
Vladimir Kotikov
4bc552848f CB-10557 Incremented plugin version. 2016-02-09 13:13:37 +03:00
Vladimir Kotikov
5af0016c67 CB-10557 Updated version and RELEASENOTES.md for release 3.2.0 2016-02-09 13:13:27 +03:00
daserge
617960ee3e CB-10422 Splashscreen displays black screen with no image on Android 2016-01-27 18:58:56 +03:00
daserge
109c82b29b CB-10412 AutoHideSplashScreen "false" isn't taken in account on iOS 2016-01-27 18:53:23 +03:00
daserge
799b0a1737 CB-9516 Android SplashScreen - Spinner Does Not Display
Removes spinnerStop call from onMessage("spinner", "stop") as it is called when webview is shown and we are hiding spinner manually along with the splashscreen dialog.
Changed the spinner to be noncancellable.
Changed the ProgressDialog to custom only-spinner mode (on transparent background, without title/message and dimming).
Removed unused spinnerStart action handler.
Updated the docs.
2016-01-22 14:21:34 +03:00
Dan Polivy
5b3c2c8b14 CB-9094: Smarter autohide logic on Android
When the plugin is initialized, the splash screen is shown with an
auto-hide delay. If a subsequent call to show() comes in while the
splashscreen is visible, it will still be automatically hidden, even
though the user expectation is that it wouldn't be.

This fix tracks the "hideAfterDelay" setting of the most recent call to
show() -- and when the auto hide timer goes off, if the most recent call
to show() did not set hideAfterDelay, then the splashscreen will not be
automatically hidden.

This provides a more consistent -- and expected -- behavior based on
user action.

https://issues.apache.org/jira/browse/CB-9094

Github: close #49
2016-01-22 13:22:37 +03:00
daserge
7a12204ba9 CB-8396 Add AutoHideSplashScreen logic to Android's Splashscreen
Also initializing the splashscreen image irrespective of firstShow because the splashscreen could be shown manually via navigator.splashscreen.show(); after exiting the app using BackButton or via navigator.app.exitApp();
2016-01-18 11:36:21 +03:00
daserge
eada9a6ac1 Closing stale: close #14, close #17, close #23, close #33, close #63 2016-01-18 10:37:43 +03:00
Steve Gill
12dcd57d51 CB-10368 Incremented plugin version. 2016-01-15 16:58:32 -08:00
Steve Gill
0f4a9d3f18 CB-10368 Updated version and RELEASENOTES.md for release 3.1.0 2016-01-15 16:35:06 -08:00
daserge
50318213c4 CB-9538 Implementing FadeSplashScreen feature for Android
Refactoring, adds support of seconds for fade duration for backward compatibility
Includes fade duration into overall splashscreen duration to be consistent with iOS
Updated the docs
2016-01-11 12:49:38 +03:00
Philipp Grosswiler
34bc1dbf16 CB-9538 Implementing FadeSplashScreen feature for Android 2016-01-11 12:44:12 +03:00
daserge
3b2e9e5912 CB-9240 Cordova splash screen plugin iPad landscape mode issue
Aligns shouldRotate default value with parent CDVViewController behavior
2015-12-29 22:08:02 +03:00
daserge
d7841c7ec9 CB-10263 Fix splashscreen plugin filenames for Asset Catalog
Github: close #69
2015-12-29 12:00:31 +03:00
Wilson Pinto
1e67606c60 CB-9374 Android: add SplashShowOnlyFirstTime as preference
Github: close #70
2015-12-26 23:01:15 +03:00
daserge
fa3b665223 CB-10244 Don't rotate the iPhone 6 Plus splash 2015-12-22 17:28:53 +03:00
daserge
875ccbf5bc CB-9043 Fix the ios splashscreen being deformed on orientation change 2015-12-22 17:15:59 +03:00
Thejaswi Puthraya
ccb3c2f453 CB-10079 Splashscreen plugin does not honor SplashScreenDelay on iOS
Github: close #64
2015-12-21 08:00:27 -08:00
daserge
cfc6d74506 CB-10231 Fix FadeSplashScreen to default to true on iOS 2015-12-21 16:51:19 +03:00
Steve Gill
78d8ef94eb CB-10035 Incremented plugin version. 2015-11-30 17:57:07 -08:00
Steve Gill
e2239306d6 CB-10035 linked issues in RELEASENOTES.md 2015-11-18 22:11:41 -08:00
Steve Gill
ea3f7f7b07 CB-10035 Updated version and RELEASENOTES.md for release 3.0.0 2015-11-18 19:45:06 -08:00
Steve Gill
d348168e08 removed r prefix from tags 2015-11-18 14:53:11 -08:00
Steve Gill
848bd487e0 CB-10035 Updated RELEASENOTES to be newest to oldest 2015-11-18 13:54:08 -08:00
Dmitry Blotsky
d034ceee6e Actually fixing the contribute link. 2015-10-23 12:11:50 -07:00
Dmitry Blotsky
93aaf0529e Fixing contribute link. 2015-10-23 12:03:42 -07:00
Jesse MacFadyen
60fb0621ae Merge branch 'add-jira-link' of https://github.com/revolunet/cordova-plugin-splashscreen 2015-10-05 17:50:24 -07:00
Jesse MacFadyen
7eec7c8b43 Bumped version number for API changed in CB-9750 commit 2015-10-05 17:47:40 -07:00
Jesse MacFadyen
3a79663680 CB-9750 FadeSplashDuration is now in msecs 2015-10-05 17:46:12 -07:00
Jesse MacFadyen
b83392df21 This closes #56, This closes #44 2015-10-05 17:23:59 -07:00
Jesse MacFadyen
2b5187b909 fix formatting 2015-10-05 17:20:57 -07:00
Jesse MacFadyen
fb0764c528 CB-8875 FadeSplashScreen was not fading 2015-10-05 16:34:49 -07:00
Jesse MacFadyen
9a69f12ada CB-9749 documentation is wrong - default SplashScreenDelay 2015-10-05 14:16:30 -07:00
Jesse MacFadyen
9bd0ec7091 Add line to increase readability. Close #58 2015-09-14 13:54:48 -07:00
Julien Bouquillon
f675376de1 add JIRA issue tracker link 2015-09-10 18:29:36 +02:00
daserge
9ea2d4c86f CB-9467 SplashScreen does not show any image in hosted app on Windows 10 2015-08-07 11:29:05 +03:00
Andrey Kurdyumov
5aff6590f8 CB-7282 Document AutoHideSplashScreenpreference 2015-07-25 13:52:42 +06:00
Shazron Abdullah
f4a92d21ff CB-9327 - Splashscreen not receiving CDVPageLoadNotification 2015-07-07 18:17:07 -07:00
Jesse MacFadyen
0916db61b4 remove travis-ci 2015-07-07 17:55:55 -07:00
Roel van Uden
ac23964ac6 WP8: Avoid config value of a wrong element.
If you have an element that shares the `name`, like <feature
name="SplashScreen">, then the `value` attribute was read of that
instead (since it can appear *before* the preference element). Thus, the
config of `SplashScreen` preference was not settable at all.
2015-06-22 11:50:07 +02:00
Steve Gill
57ad3602f4 CB-9192 Incremented plugin version. 2015-06-17 17:35:36 -07:00
Steve Gill
4b1df233ae CB-9202 updated repo url to github mirror in package.json 2015-06-17 14:14:41 -07:00
Steve Gill
c4ba138de5 CB-9192 Updated version and RELEASENOTES.md for release 2.1.0 2015-06-17 12:36:05 -07:00
Steve Gill
805bcf505d added missing license headers 2015-06-17 11:11:40 -07:00
Victor Sosa
fa29a85fcb CB-9128 cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen 2015-06-12 09:42:35 -05:00
Raymond Camden
ab26925e25 fix npm md issue 2015-06-02 11:01:17 -05:00
Shazron Abdullah
ed00c63d2d Fixed iOS unit tests. 2015-05-12 00:04:24 -07:00
Dan Polivy
52c025bbef CB-3562: Disable screen rotation for iPhone when splash screen is shown. (closes #47)
This is a port of emarashliev's original fix for CB-3562, cleaned up
to avoid deprecated functions.

Merge branch 'master' of https://github.com/emarashliev/cordova-plugin-splashscreen into CB3562

Signed-off-by: Shazron Abdullah <shazron@apache.org>
2015-05-11 23:59:44 -07:00
Dan Polivy
87f3c3a3ac CB-8988: Fix rotation on iOS/iPad (closes #46)
The viewController.interfaceOrientation passed to getImageName has not
yet been updated with the new orientation, even when the frame/bounds
change event has fired. Thus, the plugin never actually loads the
correct image for the new orientation. Instead, it poorly scales the
existing image.

This fix uses the statusBarOrientation property of the UIApplication
object to detect the actual orientation, and correctly load the right
image.

Signed-off-by: Shazron Abdullah <shazron@apache.org>
2015-05-11 17:46:58 -07:00
Joe Bowser
6cc3d1f3fe CB-8904: Don't reset the static variable when it's destroyed, otherwise we might as well just have a member variable 2015-05-07 15:59:39 -07:00
sgrebnov
b7750760f4 Removed wp7 from plugin.xml and package.json 2015-04-25 14:58:11 -07:00
sgrebnov
00e8999eeb CB-8750 [wp8]: Rewrite resoultion helper 2015-04-25 14:56:39 -07:00
sgrebnov
9549ce3a9d CB-8750 [wp8]: Allow resolution-specific splashscreen images
There are two aspect ratios for Windows Phone devices: 15:9 and 16:9. At
the moment, though, there is only one splash screen by default for WP8
Cordova apps. When stretched to fit all possible resolutions, this can
sometimes look bad.

WP supports resolution-specific splashscreens, so this commit adds the
same support to the splashscreen plugin. It uses the same base name for
the splashscreen, but adds modifiers such as ".screen-<res>" based on
the device. If a screen-specific image is found, it is used. If not, we
fall back to the single default image.

Fixes https://issues.apache.org/jira/browse/CB-8750

github close #41
github close #42
2015-04-25 14:55:21 -07:00
Dan Polivy
62e92afae8 CB-8758 [wp8]: UnauthorizedAccessException on hide()
When calling hide() from JS, the attempt to access Popup could happen on
a background thread, which ends up throwing an
UnauthorizedAccessException about cross-thread access.

To address this, it's best to check the popup's state from within the UI
thread.

Fixes https://issues.apache.org/jira/browse/CB-8758
2015-04-25 14:32:17 -07:00
Steve Gill
fa60f01adc CB-8858 Incremented plugin version. 2015-04-15 16:00:22 -07:00
Steve Gill
d23ea4e011 CB-8858 Updated version in package.json for release 2.0.0 2015-04-15 15:50:47 -07:00
Steve Gill
0a46c4cbbb Revert "CB-8858 Incremented plugin version."
This reverts commit a510cd21ec.
2015-04-15 14:31:12 -07:00
Steve Gill
a510cd21ec CB-8858 Incremented plugin version. 2015-04-15 13:55:47 -07:00
Steve Gill
76bf7655a0 CB-8858 Updated version and RELEASENOTES.md for release 2.0.0 2015-04-15 11:06:38 -07:00
Jesse MacFadyen
9575c92db6 give users a way to install the bleeding edge. 2015-04-13 11:40:00 -07:00
Steve Gill
a9ac114130 CB-8746 gave plugin major version bump 2015-04-09 17:03:54 -07:00
Shazron Abdullah
48def1443a CB-8797 - Splashscreen preferences FadeSplashScreenDuration and FadeSplashScreen (iOS) are missing 2015-04-09 14:19:23 -07:00
Shazron Abdullah
559b300d29 CB-8836 - Crashes after animating splashscreen 2015-04-09 14:07:18 -07:00
Andrew Grieve
35272415d3 CB-8753 android: Fix missing import in previous commit 2015-04-07 20:37:06 -04:00
Alex Talis
dd9c88204c CB-8753 android: Adds SplashMaintainAspectRatio preference (close #43) 2015-04-07 10:55:23 -04:00
Steve Gill
5dc26d7e65 CB-8683 changed plugin-id to pacakge-name 2015-04-01 16:41:33 -07:00
Steve Gill
1c41959288 CB-8653 properly updated translated docs to use new id 2015-03-31 16:06:01 -07:00
Steve Gill
43e9c75345 CB-8653 updated translated docs to use new id 2015-03-31 10:53:32 -07:00
Andrew Grieve
9b3f750085 CB-8345 Make default for splashscreen resource "screen" (which is what template and CLI assume it to be) 2015-03-30 09:48:04 -04:00
Andrew Grieve
ba6730e594 Revert "CB-8345 android: Make "splash" the default resource ID instead of null"
This reverts commit 1d89a2aa1b.
There were some other changes in there that weren't meant to be made!
2015-03-30 09:47:00 -04:00
Jesse MacFadyen
89c23fad03 Use TRAVIS_BUILD_DIR, install paramedic by npm 2015-03-24 23:43:27 -07:00
Andrew Grieve
1d89a2aa1b CB-8345 android: Make "splash" the default resource ID instead of null 2015-03-24 14:50:09 -04:00
sgrebnov
0ff8d52081 docs: added Windows to supported platforms 2015-03-19 18:24:40 +03:00
daserge
bb65993a51 CB-7964 Add cordova-plugin-splashscreen support for browser platform
Added Browser platform support
Using cordova/confighelper module to read parameter values from config.xml
Updated the docs
2015-03-18 16:01:31 +03:00
Steve Gill
6ce8a32865 CB-8653 Updated Readme 2015-03-13 19:41:09 -07:00
Jesse MacFadyen
5afde1c62f [wp8] oops, Added back config parse result checks 2015-03-10 15:03:39 -07:00
Jesse MacFadyen
6b1e72c631 [WP8] code cleanup, minor refactors, comments to clarify some stuff. 2015-03-10 14:27:29 -07:00
Jesse MacFadyen
98edfeb73e Merge branch 'galexandrov/wp8-fixes' of https://github.com/Icenium/cordova-plugin-splashscreen 2015-03-10 12:53:16 -07:00
Georgi Alexandrov
688b138e31 Extend WP8 Splash Screen to respect SplashScreen and SplashScreenDelay preferences from config file 2015-03-09 14:30:14 +02:00
Jesse MacFadyen
8bc540e454 CB-8574 Integrate TravisCI 2015-03-02 16:37:52 -08:00
Victor Sosa
4430cfce6b CB-8438 cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen 2015-02-27 12:52:28 -06:00
Steve Gill
c1d4ca8d83 CB-8538 Added package.json file 2015-02-25 00:53:27 -08:00
sgrebnov
bcbc23958f CB-8397 Add support to 'windows' for showing the Windows Phone splashscreen 2015-02-11 13:36:02 +03:00
Andrew Grieve
b232cd7447 CB-8429 Incremented plugin version. 2015-02-04 20:54:03 -05:00
Andrew Grieve
a9f0faa499 CB-8429 Updated version and RELEASENOTES.md for release 1.0.0 2015-02-04 20:12:45 -05:00
Andrew Grieve
c3a5867c81 CB-8351 ios: Stop using deprecated IsIpad macro 2015-01-27 10:20:17 -05:00
Andrew Grieve
e86a9cc7a4 CB-8280 android: Don't apply SplashScreenDelay when .show() is called explicitly 2015-01-19 13:39:55 -05:00
Andrew Grieve
ddec7008cb CB-3679 Add engine tag for Android >= 3.6.0 due to use of preferences 2014-12-11 11:15:01 -05:00
Andrew Grieve
e320e2504a CB-8079 Use activity class package name, but fallback to application package name when looking for splash screen drawable 2014-12-10 21:18:00 -05:00
Andrew Grieve
e593fe3f53 CB-3679 Make SplashScreen plugin compatible with cordova-android@4.0.x 2014-12-10 16:09:54 -05:00
Andrew Grieve
50e4887aa1 CB-3679 Break Android splashscreen logic into splascreen plugin 2014-12-10 15:37:15 -05:00
Steve Gill
f67216d64a CB-8110 Incremented plugin version. 2014-12-02 16:08:50 -08:00
Steve Gill
67e8b9f01d CB-8110 Updated version and RELEASENOTES.md for release 0.3.5 2014-12-02 16:07:02 -08:00
Ian Clelland
29ac24ff9d Merge branch 'CB-7700' 2014-12-02 16:19:29 -05:00
Victor Sosa
3947f8570a CB-7700 cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen 2014-10-20 10:39:27 -05:00
Shazron Abdullah
d2e62a551c CB-7204 - Race condition when hiding and showing spinner (closes #21) 2014-10-13 16:11:42 -07:00
Shazron Abdullah
c67622f1b9 Update iOS test to specify device 2014-10-13 16:06:17 -07:00
Nic Mulvaney
2f37eed184 Fix for portrait/landscape detection
Sometimes the width can be 568 or 320 depending on orientation on iPhone 5. This fixes the detection.

Signed-off-by: Shazron Abdullah <shazron@apache.org>
2014-10-13 16:03:33 -07:00
Ian Clelland
887f0f6c81 Merge branch 'master' of https://github.com/sosahvictor/cordova-plugin-splashscreen 2014-10-06 15:10:40 -04:00
Steven Gill
8804977c84 Incremented plugin version. 2014-10-03 17:09:47 -07:00
Steven Gill
b46cdca795 Updated version and RELEASENOTES.md for release 0.3.4 2014-10-03 16:10:14 -07:00
Victor Sosa
1009019372 CB-7700 cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen 2014-10-02 18:13:15 -05:00
Shazron Abdullah
129830a76c Finalized iOS splash screen (image name) tests. 176 tests in all, 44 for each type of device (iPad, iPhone, iPhone5, iPhone6, iPhone 6 Plus). 2014-10-01 16:06:24 -07:00
Shazron Abdullah
24e6f2e0dd CB-7633 - (Re-fix based on updated unit tests) iPhone 6 Plus support 2014-10-01 13:59:22 -07:00
Shazron Abdullah
21f372acc9 Updated iOS tests for locked orientations 2014-10-01 13:49:36 -07:00
Shazron Abdullah
4d548e67c2 Added more iOS splash screen tests. 2014-09-30 17:52:51 -07:00
Shazron Abdullah
55722de1c4 CB-7633 - Add support for iPhone 6/6+ 2014-09-30 17:52:30 -07:00
Shazron Abdullah
0ffe1c2d46 Added failing iPhone 6/6 Plus tests. 2014-09-30 16:59:47 -07:00
Shazron Abdullah
95f407ea0d Re-fix iOS command line tests not working if Xcode was not launched at least once (shared scheme was not saved in the right place) 2014-09-30 11:56:38 -07:00
Shazron Abdullah
99803ba7c6 Fix iOS command line tests not working if Xcode was not launched at least once. 2014-09-30 11:52:11 -07:00
Shazron Abdullah
6b87577801 Added 'npm test' 2014-09-30 11:47:46 -07:00
Shazron Abdullah
d0614c532b Fixed iOS tests README typo. 2014-09-30 11:06:04 -07:00
Shazron Abdullah
483182f33a CB-7663 - Update README for command line invocation of tests 2014-09-29 17:49:21 -07:00
Shazron Abdullah
d85c6a9359 CB-7663 - iOS unit tests for splash screen 2014-09-29 17:33:50 -07:00
Shazron Abdullah
fcd628ffc9 CB-7663 - prep for unit tests 2014-09-29 14:03:58 -07:00
Shazron Abdullah
e1f17d6665 Properly formatted splashscreen preference docs. 2014-09-29 12:03:01 -07:00
Marcel Kinard
ec7c6aac30 CB-7571 Bump version of nested plugin to match parent plugin 2014-09-17 16:27:18 -04:00
Marcel Kinard
0b001fb209 CB-7571 Incremented plugin version. 2014-09-17 15:35:02 -04:00
Marcel Kinard
e4d8b77027 CB-7571 Updated version and RELEASENOTES.md for release 0.3.3 2014-09-17 15:27:44 -04:00
Lisa Seacat DeLuca
0f63861e88 CB-7249cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen 2014-08-19 10:51:57 -04:00
Edna Morales
e364377d4f Merge renamed tests dir 2014-08-13 13:24:50 -04:00
Jesse MacFadyen
395302ee16 Merge branch 'CB-7196' of https://github.com/stacic/cordova-plugin-splashscreen 2014-08-07 13:39:02 -07:00
Steven Gill
333b0e7f90 CB-7244 Incremented plugin version. 2014-08-06 19:24:29 -07:00
Steven Gill
3b58cd69b3 CB-7244 Updated version and RELEASENOTES.md for release 0.3.2 2014-08-06 18:58:24 -07:00
Staci Cooper
be8d340f31 Renamed test dir, added nested plugin.xml 2014-08-01 16:40:01 -04:00
Edna Morales
f833c39ed3 added documentation for manual tests 2014-07-29 09:10:44 -04:00
Staci Cooper
8eb2533e78 CB-7196 port splashscreen tests to framework 2014-07-24 15:37:03 -04:00
Lisa Seacat DeLuca
5d25cf0250 CB-6127lisa7cordova-plugin-consolecordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen 2014-07-07 15:28:22 -04:00
Michael Hoisie
cd61952efc CB-7041 ios: Fix image filename logic when setting the iPad splash screen
When running Cordova apps without orientation lock on iPads, the
Splash Screen plugin didn't work properly. It would skip the iPad-
specific splash screen logic, and just select the image named
@"Default.png" (without adding the orientation suffix), and print
the following messages in the console:

WARNING: The splashscreen image named Default was not found

Now, for iPads, the splash screen image is set by first looking
at the position of the orientation lock, and if that is not set, it
uses the calculated view orientation.

close #19
2014-06-27 14:56:49 -04:00
ldeluca
6f23d8e828 CB-6773cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen 2014-06-23 13:53:41 -04:00
ldeluca
cf5c5beafb Merge branch 'master' of ssh://github.com/ldeluca/cordova-plugin-splashscreen into CB-6773cordova-plugin-splashscreen 2014-06-23 12:26:08 -04:00
Nadya Atanasova
1f50d90d9e fixes Splashscreen crash on WP8
The UI elements cannot be accessed from any other than the UI thread directly. So, enclose UI access code in the Dispatcher.BeginInvoke()
2014-06-19 16:55:35 +04:00
mbillau
c56bb9efec Remove outdated doc, thx Axel 2014-06-16 13:43:32 -04:00
ldeluca
1943a88c8c Merge branch 'master' of ssh://github.com/ldeluca/cordova-plugin-splashscreen into CB-6773cordova-plugin-splashscreen 2014-06-11 10:00:30 -04:00
Steven Gill
ac1422f49f CB-6877 Incremented plugin version. 2014-06-05 13:40:50 -07:00
ldeluca
b109c7f234 Merge branch 'master' of ssh://github.com/ldeluca/cordova-plugin-splashscreen into CB-6773cordova-plugin-splashscreen 2014-05-30 09:52:46 -04:00
ldeluca
829dbcc819 CB-6773cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen 2014-05-28 13:15:40 -04:00
ldeluca
ae7daf48e3 Merge branch 'master' of ssh://github.com/ldeluca/cordova-plugin-splashscreen into CB-6773cordova-plugin-splashscreen 2014-05-28 13:07:18 -04:00
ldeluca
4fda49b771 documentation translation: cordova-plugin-splashscreen 2014-05-28 12:48:19 -04:00
ldeluca
2c68427a8a Lisa testing pulling in plugins for plugin: cordova-plugin-splashscreen 2014-05-28 12:48:19 -04:00
ldeluca
0498d90517 Lisa testing pulling in plugins for plugin: cordova-plugin-splashscreen 2014-05-28 12:48:19 -04:00
ldeluca
5c245c2bc8 Lisa testing pulling in plugins for plugin: cordova-plugin-splashscreen 2014-05-28 12:48:19 -04:00
ldeluca
ec5bbc51e7 Lisa testing pulling in plugins for plugin: cordova-plugin-splashscreen 2014-05-28 12:48:19 -04:00
41 changed files with 3138 additions and 1621 deletions

32
.appveyor.yml Normal file
View File

@@ -0,0 +1,32 @@
# appveyor file
# http://www.appveyor.com/docs/appveyor-yml
max_jobs: 1
shallow_clone: true
init:
- git config --global core.autocrlf true
image:
- Visual Studio 2017
environment:
matrix:
- nodejs_version: "10"
- nodejs_version: "12"
platform:
- x86
- x64
install:
- ps: Install-Product node $env:nodejs_version
- node --version
- npm install -g cordova-paramedic@https://github.com/apache/cordova-paramedic.git
- npm install -g cordova
build: off
test_script:
- cordova-paramedic --config pr\windows-10-store --plugin . --justBuild

22
.asf.yaml Normal file
View File

@@ -0,0 +1,22 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
notifications:
commits: commits@cordova.apache.org
issues: issues@cordova.apache.org
pullrequests_status: issues@cordova.apache.org
pullrequests_comment: issues@cordova.apache.org

23
.eslintrc.yml Normal file
View File

@@ -0,0 +1,23 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
root: true
extends: '@cordova/eslint-config/browser'
overrides:
- files: [tests/**/*.js]
extends: '@cordova/eslint-config/node-tests'

42
.github/ISSUE_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,42 @@
<!--
Please have a look at the issue templates you get when you click "New issue" in the GitHub UI.
We very much prefer issues created by using one of these templates.
-->
### Issue Type
<!-- Please check the boxes by putting an x in the [ ] like so: [x] -->
- [ ] Bug Report
- [ ] Feature Request
- [ ] Support Question
## Description
## Information
<!-- Include all relevant information that might help understand and reproduce the problem -->
### Command or Code
<!-- What command or code is needed to reproduce the problem? -->
### Environment, Platform, Device
<!-- In what environment, on what platform or on which device are you experiencing the issue? -->
### Version information
<!--
What are relevant versions you are using?
For example:
Cordova: Cordova CLI, Cordova Platforms, Cordova Plugins
Other Frameworks: Ionic Framework and CLI version
Operating System, Android Studio, Xcode etc.
-->
## Checklist
<!-- Please check the boxes by putting an `x` in the `[ ]` like so: `[x]` -->
- [ ] I searched for already existing GitHub issues about this
- [ ] I updated all Cordova tooling to their most recent version
- [ ] I included all the necessary information above

50
.github/ISSUE_TEMPLATE/BUG_REPORT.md vendored Normal file
View File

@@ -0,0 +1,50 @@
---
name: 🐛 Bug Report
about: If something isn't working as expected.
---
# Bug Report
## Problem
### What is expected to happen?
### What does actually happen?
## Information
<!-- Include all relevant information that might help understand and reproduce the problem -->
### Command or Code
<!-- What command or code is needed to reproduce the problem? -->
### Environment, Platform, Device
<!-- In what environment, on what platform or on which device are you experiencing the issue? -->
### Version information
<!--
What are relevant versions you are using?
For example:
Cordova: Cordova CLI, Cordova Platforms, Cordova Plugins
Other Frameworks: Ionic Framework and CLI version
Operating System, Android Studio, Xcode etc.
-->
## Checklist
<!-- Please check the boxes by putting an x in the [ ] like so: [x] -->
- [ ] I searched for existing GitHub issues
- [ ] I updated all Cordova tooling to most recent version
- [ ] I included all the necessary information above

View File

@@ -0,0 +1,29 @@
---
name: 🚀 Feature Request
about: A suggestion for a new functionality
---
# Feature Request
## Motivation Behind Feature
<!-- Why should this feature be implemented? What problem does it solve? -->
## Feature Description
<!--
Describe your feature request in detail
Please provide any code examples or screenshots of what this feature would look like
Are there any drawbacks? Will this break anything for existing users?
-->
## Alternatives or Workarounds
<!--
Describe alternatives or workarounds you are currently using
Are there ways to do this with existing functionality?
-->

View File

@@ -0,0 +1,27 @@
---
name: 💬 Support Question
about: If you have a question, please check out our Slack or StackOverflow!
---
<!------------^ Click "Preview" for a nicer view! -->
Apache Cordova uses GitHub Issues as a feature request and bug tracker _only_.
For usage and support questions, please check out the resources below. Thanks!
---
You can get answers to your usage and support questions about **Apache Cordova** on:
* Slack Community Chat: https://cordova.slack.com (you can sign-up at http://slack.cordova.io/)
* StackOverflow: https://stackoverflow.com/questions/tagged/cordova using the tag `cordova`
---
If you are using a tool that uses Cordova internally, like e.g. Ionic, check their support channels:
* **Ionic Framework**
* [Ionic Community Forum](https://forum.ionicframework.com/)
* [Ionic Worldwide Slack](https://ionicworldwide.herokuapp.com/)
* **PhoneGap**
* [PhoneGap Developer Community](https://forums.adobe.com/community/phonegap)

35
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,35 @@
<!--
Please make sure the checklist boxes are all checked before submitting the PR. The checklist is intended as a quick reference, for complete details please see our Contributor Guidelines:
http://cordova.apache.org/contribute/contribute_guidelines.html
Thanks!
-->
### Platforms affected
### Motivation and Context
<!-- Why is this change required? What problem does it solve? -->
<!-- If it fixes an open issue, please link to the issue here. -->
### Description
<!-- Describe your changes in detail -->
### Testing
<!-- Please describe in detail how you tested your changes. -->
### Checklist
- [ ] I've run the tests to see all new and existing tests pass
- [ ] I added automated test coverage as appropriate for this change
- [ ] Commit is prefixed with `(platform)` if this change only applies to one platform (e.g. `(android)`)
- [ ] If this Pull Request resolves an issue, I linked to the issue in the text above (and used the correct [keyword to close issues using keywords](https://help.github.com/articles/closing-issues-using-keywords/))
- [ ] I've updated the documentation if necessary

12
.gitignore vendored
View File

@@ -1,4 +1,4 @@
#If ignorance is bliss, then somebody knock the smile off my face
#If ignorance is bliss, then somebody knock the smile off my face
*.csproj.user
*.suo
@@ -12,12 +12,4 @@ Thumbs.db
*.swp
*.user
node_modules

3
.npmignore Normal file
View File

@@ -0,0 +1,3 @@
.*
appveyor.yml
tests

106
.travis.yml Normal file
View File

@@ -0,0 +1,106 @@
# This Travis configuration file is built after a Cordova Paramedic
# specific template with minimal modifications and adaptations:
# https://github.com/apache/cordova-paramedic/blob/master/.travis.yml
sudo: false
addons:
jwt:
# sauce labs key
secure: UmbBQ73ydIzhTCfaTb/g0beTwnOHjYxlILmQYK2Tl9Gna/KbpawiVmbloX1eZakevkeYgzQmAHEF0LyDINy5AUk97azYeP0Sz/IOjIDfXAdc6U6sZb7BScneBMt6ET/hCprG4f3mbmleQ+gx+dmNWez6rlb3Xu+XWfJuwDfAWm0=
env:
global:
- SAUCE_USERNAME=snay
- TRAVIS_NODE_VERSION=12
- ANDROID_API_LEVEL=29
- ANDROID_BUILD_TOOLS_VERSION=29.0.2
language: node_js
node_js: 12
# yaml anchor/alias: https://medium.com/@tommyvn/travis-yml-dry-with-anchors-8b6a3ac1b027
_android: &_android
language: android
os: linux
jdk: oraclejdk8
android:
components:
- tools
- build-tools-$ANDROID_BUILD_TOOLS_VERSION
- android-$ANDROID_API_LEVEL
licenses:
- "android-sdk-preview-license-.+"
- "android-sdk-license-.+"
- "google-gdk-license-.+"
matrix:
include:
# one local test, without saucelabs
- env: PLATFORM=local/browser
os: osx
# many tests with saucelabs
- env: PLATFORM=browser-chrome
- env: PLATFORM=browser-firefox
- env: PLATFORM=browser-safari
- env: PLATFORM=browser-edge
- env: PLATFORM=android-5.1
<<: *_android
- env: PLATFORM=android-6.0
<<: *_android
- env: PLATFORM=android-7.0
<<: *_android
- env: PLATFORM=android-7.1
<<: *_android
- env: PLATFORM=android-8.0
<<: *_android
- env: PLATFORM=android-8.1
<<: *_android
- env: PLATFORM=android-9.0
<<: *_android
before_install:
# manually install Node for `language: android`
- if [[ "$PLATFORM" =~ android ]]; then nvm install $TRAVIS_NODE_VERSION; fi
- node --version
- if [[ "$PLATFORM" =~ android ]]; then gradle --version; fi
- npm install -g cordova
# install paramedic if not running on paramedic repo
- if ! [[ "$TRAVIS_REPO_SLUG" =~ cordova-paramedic ]]; then npm install -g github:apache/cordova-paramedic; fi
install:
- npm install
before_script:
- |
if [[ "$TRAVIS_REPO_SLUG" =~ cordova-paramedic ]]; then
# when used in the cordova-paramedic repo
TEST_COMMAND="npm run eslint"
PARAMEDIC_PLUGIN_TO_TEST="./spec/testable-plugin/"
PARAMEDIC_COMMAND="node main.js"
else
# when used in any other (plugin) repo
TEST_COMMAND="npm test"
PARAMEDIC_PLUGIN_TO_TEST=$(pwd)
PARAMEDIC_COMMAND="cordova-paramedic"
fi
- PARAMEDIC_BUILDNAME=travis-$TRAVIS_REPO_SLUG-$TRAVIS_JOB_NUMBER
- |
echo "Variables now are set to:"
echo "TEST_COMMAND=$TEST_COMMAND"
echo "ADDITIONAL_TESTS=$ADDITIONAL_TESTS"
echo "PARAMEDIC_COMMAND=$PARAMEDIC_COMMAND"
echo "PLATFORM=$PLATFORM"
echo "PARAMEDIC_PLUGIN_TO_TEST=$PARAMEDIC_PLUGIN_TO_TEST"
echo "PARAMEDIC_BUILDNAME=$PARAMEDIC_BUILDNAME"
script:
- $TEST_COMMAND
- |
if [[ "$ADDITIONAL_TESTS_DIR" != "" ]]; then
cd $ADDITIONAL_TESTS_DIR && npm install && npm test;
else
$PARAMEDIC_COMMAND --config ./pr/$PLATFORM --plugin $PARAMEDIC_PLUGIN_TO_TEST --buildName $PARAMEDIC_BUILDNAME;
fi

View File

@@ -25,13 +25,13 @@ Anyone can contribute to Cordova. And we need your contributions.
There are multiple ways to contribute: report bugs, improve the docs, and
contribute code.
For instructions on this, start with the
[contribution overview](http://cordova.apache.org/#contribute).
For instructions on this, start with the
[contribution overview](http://cordova.apache.org/contribute/).
The details are explained there, but the important items are:
- Sign and submit an Apache ICLA (Contributor License Agreement).
- Have a Jira issue open that corresponds to your contribution.
- Check for Github issues that corresponds to your contribution and link or create them if necessary.
- Run the tests so your patch doesn't break existing functionality.
We look forward to your contributions!

View File

@@ -1,22 +1,53 @@
<!---
license: Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
---
title: 可设置全屏显示的 Splashscreen
description: Control the splash screen for your app.
---
<!--
# license: Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
-->
# org.apache.cordova.splashscreen
# cordova-plugin-splashscreen
Plugin documentation: [doc/index.md](doc/index.md)
在 [cordova-plugin-splashscreen](https://github.com/apache/cordova-plugin-splashscreen.git) 的基础上添加了全屏设置,处理了android启动app时黑屏的问题
- [Installation](#installation)
- [Preferences](#preferences)
* [config.xml](#configxml)
- [Other](#other)
## Installation
// 安装前请先卸载 cordova-plugin-splashscreen 插件
cordova plugin rm cordova-plugin-splashscreen
// 安装插件
cordova plugin add https://github.com/shuto-cn/cordova-plugin-splashscreen.git
## Preferences
### config.xml
- `SplashFullScreen` (boolean, default to `true`). 在app未设置全屏的情况下FadeSplash是否全屏显示
```xml
<preference name="SplashFullScreen" value="true" />
```
## Other
- 关于android启动黑屏 请保持`SplashScreen`参数值为`screen`否则请修改`src/android/res/values/style.xml`中对应资源id
- 其他配置及插件使用方法请移步[cordova-plugin-splashscreen](https://github.com/apache/cordova-plugin-splashscreen.git)

View File

@@ -20,43 +20,203 @@
-->
# Release Notes
### 0.2.2 (Sept 25, 2013)
* CB-4889 bumping&resetting version
* CB-4889 renaming org.apache.cordova.core.splashscreen to org.apache.cordova.splashscreen
* Rename CHANGELOG.md -> RELEASENOTES.md
* [CB-4806] Update splashscreen image bounds for iOS 7
* [CB-4752] Incremented plugin version on dev branch.
### 6.0.0 (Jul 07, 2020)
### 0.2.3 (Oct 9, 2013)
* [CB-4806] Re-fix Update splashscreen image bounds for iOS 7
* [CB-4934] plugin-splashscreen should not show by default on Windows8
* [CB-4929] plugin-splashscreen not loading proxy windows8
* [CB-4915] Incremented plugin version on dev branch.
* [GH-282](https://github.com/apache/cordova-plugin-splashscreen/pull/282) fix: js `clobber` only on supported platforms
* [GH-281](https://github.com/apache/cordova-plugin-splashscreen/pull/281) chore: adds `package-lock` file
* [GH-280](https://github.com/apache/cordova-plugin-splashscreen/pull/280) doc(android): various improvements including size specs
* [GH-200](https://github.com/apache/cordova-plugin-splashscreen/pull/200) fix(windows): implementation structure
* [GH-279](https://github.com/apache/cordova-plugin-splashscreen/pull/279) chore: add missing supported platform **Browser** to `npm` keywords
* [GH-278](https://github.com/apache/cordova-plugin-splashscreen/pull/278) chore: update `engine` checks to cover newer versions
* [GH-277](https://github.com/apache/cordova-plugin-splashscreen/pull/277) breaking: replace `jshint` with `eslint`
* [GH-276](https://github.com/apache/cordova-plugin-splashscreen/pull/276) breaking: drop `node` `engine` requirement
* [GH-275](https://github.com/apache/cordova-plugin-splashscreen/pull/275) chore: cleanup repo
* [GH-274](https://github.com/apache/cordova-plugin-splashscreen/pull/274) breaking: bump `engine` restriction for cordova dependencies
* [GH-263](https://github.com/apache/cordova-plugin-splashscreen/pull/263) breaking: remove **iOS** platform code from plugin repo
* [GH-267](https://github.com/apache/cordova-plugin-splashscreen/pull/267) test: force `cordova-ios`@^5.1.1
### 0.2.4 (Oct 28, 2013)
* CB-5128: add repo + issue tag to plugin.xml for splashscreen plugin
* [CB-5010] Incremented plugin version on dev branch.
### 5.0.4 (Jun 03, 2020)
* [GH-261](https://github.com/apache/cordova-plugin-splashscreen/pull/261) chore: add `cordova-ios` requirement <6.0.0
* chore(asf): update git notification settings
* update CONTRIBUTING.md
* [GH-251](https://github.com/apache/cordova-plugin-splashscreen/pull/251) chore(npm): adds ignore list
* [GH-252](https://github.com/apache/cordova-plugin-splashscreen/pull/252) ci: updates Node.js versions
* [GH-236](https://github.com/apache/cordova-plugin-splashscreen/pull/236) update homepage to github `README` page
* [GH-239](https://github.com/apache/cordova-plugin-splashscreen/pull/239) update `README`.md by adding missing info
* ci(travis): Upgrade node from 6 to 8
* ci(travis): Remove **Android 4.4**, Add **Android** 9.0
* [GH-212](https://github.com/apache/cordova-plugin-splashscreen/pull/212) ci(travis): Add ADDITIONAL_TESTS_DIR=./tests/ios
### 0.2.5 (Dec 4, 2013)
* add ubuntu platform
* Added amazon-fireos platform. Change to use amazon-fireos as a platform if the user agent string contains 'cordova-amazon-fireos'
* CB-5124 - Remove splashscreen config.xml values from iOS Configuration Docs, move to plugin docs
### 5.0.3 (May 09, 2019)
* Update CI configuration and README ([#210](https://github.com/apache/cordova-plugin-splashscreen/pull/210), [#208](https://github.com/apache/cordova-plugin-splashscreen/pull/208), [#198](https://github.com/apache/cordova-plugin-splashscreen/pull/198), [#194](https://github.com/apache/cordova-plugin-splashscreen/pull/194))
* Add or update GitHub pull request and issue template
* [CB-13826](https://issues.apache.org/jira/browse/CB-13826) Incremented plugin version.
* [CB-12277](https://issues.apache.org/jira/browse/CB-12277) (android) avoid NullPointerException on splashImageView when removing splashscreen
### 0.2.6 (Jan 02, 2014)
* CB-5658 Add doc/index.md for Splashscreen plugin
* Handle error when splash image is missing.
### 5.0.2 (Jan 24, 2018)
* [CB-13750](https://issues.apache.org/jira/browse/CB-13750) Add build-tools-26.0.2 to travis
* [CB-13737](https://issues.apache.org/jira/browse/CB-13737) (iOS): fix Splash screen images for iPhone X
### 0.2.7 (Feb 05, 2014)
* [CB-3562] Fix aspect ratio on landscape-only iPhone applications
* CB-4051 fix for splashscreen rotation problem
### 5.0.1 (Dec 27, 2017)
* [CB-13709](https://issues.apache.org/jira/browse/CB-13709) Fix to allow 5.0.0 version install (#144)
### 0.3.0 (Apr 17, 2014)
* Add Tizen support to plugin
* CB-6422: [windows8] use cordova/exec/proxy
* CB-4051: [ios] - Re-fix - Splashscreen rotation problem (closes #13)
* CB-6460: Update license headers
* CB-6465: Add license headers to Tizen code
* Add NOTICE file
### 5.0.0 (Dec 15, 2017)
* [CB-13677](https://issues.apache.org/jira/browse/CB-13677) Remove deprecated platforms
### 4.1.0 (Nov 06, 2017)
* [CB-13473](https://issues.apache.org/jira/browse/CB-13473) (CI) Removed **Browser** builds from AppVeyor
* [CB-12011](https://issues.apache.org/jira/browse/CB-12011) (android) added the possibility to change the spinner color on **Android 5.0**+ apps
* [CB-13028](https://issues.apache.org/jira/browse/CB-13028) (CI) **Browser** builds on Travis and AppVeyor
* [CB-13094](https://issues.apache.org/jira/browse/CB-13094) (android) Don't show splash when activity being finished
* [CB-11487](https://issues.apache.org/jira/browse/CB-11487) (browser) Documented `AutoHideSplashScreen` for **Browser**
* [CB-11488](https://issues.apache.org/jira/browse/CB-11488) (browser) The `hide()` call became non re-entrant after the addition of fade out. This fixes the issue.
* [CB-11487](https://issues.apache.org/jira/browse/CB-11487) (browser) The standard `AutoHideSplashScreen` `config.xml` property is now supported by the **Browser** platform.
* [CB-11486](https://issues.apache.org/jira/browse/CB-11486) (browser) `splashScreenDelay` now feed through `parseInt` to ensure it is an integer by the time it's value is passed in to `setTimeout()` in `hide()`.
* [CB-12847](https://issues.apache.org/jira/browse/CB-12847) added `bugs` entry to `package.json`.
### 4.0.3 (Apr 27, 2017)
* [CB-12622](https://issues.apache.org/jira/browse/CB-12622) Added **Android 6.0** build badge to `README`
* [CB-12685](https://issues.apache.org/jira/browse/CB-12685) added `package.json` to tests folder
### 4.0.2 (Feb 28, 2017)
* [CB-12353](https://issues.apache.org/jira/browse/CB-12353) Corrected merges usage in `plugin.xml`
* [CB-12369](https://issues.apache.org/jira/browse/CB-12369) Add plugin typings from `DefinitelyTyped`
* [CB-12363](https://issues.apache.org/jira/browse/CB-12363) Added build badges for **iOS 9.3** and **iOS 10.0**
* [CB-12230](https://issues.apache.org/jira/browse/CB-12230) Removed **Windows 8.1** build badges
### 4.0.1 (Dec 07, 2016)
* [CB-12224](https://issues.apache.org/jira/browse/CB-12224) Updated version and RELEASENOTES.md for release 4.0.1
* [CB-11751](https://issues.apache.org/jira/browse/CB-11751) 'extendedSplashScreen' is undefined Document that splashscreen needs to be disabled on Windows in case of updating entire document body
* [CB-9287](https://issues.apache.org/jira/browse/CB-9287) Not enough Icons and Splashscreens for **Windows 8.1** and Windows Phone 8.1
* [CB-11917](https://issues.apache.org/jira/browse/CB-11917) - Remove pull request template checklist item: "iCLA has been submitted…"
* [CB-11830](https://issues.apache.org/jira/browse/CB-11830) (iOS) Fix doc typos in PR#114
* [CB-11829](https://issues.apache.org/jira/browse/CB-11829) (iOS) Support for CB-9762; docs (CB-11830)
* [CB-11832](https://issues.apache.org/jira/browse/CB-11832) Incremented plugin version.
### 4.0.0 (Sep 08, 2016)
* [CB-11795](https://issues.apache.org/jira/browse/CB-11795) Add 'protective' entry to cordovaDependencies
* [CB-11326](https://issues.apache.org/jira/browse/CB-11326) Prevent crash when initializing plugin after navigating to another URL
* Fix crash on **iOS** when reloading page from remote **Safari**
* Add badges for paramedic builds on Jenkins
* Add pull request template.
* [CB-11179](https://issues.apache.org/jira/browse/CB-11179) Extend the windows-splashscreen docs
* [CB-11159](https://issues.apache.org/jira/browse/CB-11159) Fix flaky splashscreen native tests
* [CB-11156](https://issues.apache.org/jira/browse/CB-11156) Change default `FadeSplashScreenDuration` value
* [CB-8056](https://issues.apache.org/jira/browse/CB-8056) Updated the dependency version, added it to the docs
* [CB-10996](https://issues.apache.org/jira/browse/CB-10996) Adding front matter to README.md
* [CB-8056](https://issues.apache.org/jira/browse/CB-8056) Implement splashscreen for **Windows** platform
* [CB-6498](https://issues.apache.org/jira/browse/CB-6498) Misleading documentation in **Android** Quirks
### 3.2.2 (Apr 15, 2016)
* [CB-10979](https://issues.apache.org/jira/browse/CB-10979) Fix splashscreen **iOS** native tests. Added `jshintignore` for tests/ios
* [CB-10895](https://issues.apache.org/jira/browse/CB-10895) Transparent Splashscreen view sometimes remains
* [CB-10562](https://issues.apache.org/jira/browse/CB-10562) `hide()` not working in latest splashscreen plug in 3.1.0 in **iOS**
* [CB-10688](https://issues.apache.org/jira/browse/CB-10688) Plugin Splashscreen Readme must have examples.
* [CB-10864](https://issues.apache.org/jira/browse/CB-10864) Run **iOS** native tests on Travis
### 3.2.1 (Mar 09, 2016)
* [CB-10764](https://issues.apache.org/jira/browse/CB-10764) Remove emoji in cordova-plugin-splashscreen
* [CB-10650](https://issues.apache.org/jira/browse/CB-10650) Non-index content.src causes Splashscreen to be not displayed on **Browser**
* [CB-10636](https://issues.apache.org/jira/browse/CB-10636) Add JSHint for plugins
* [CB-10606](https://issues.apache.org/jira/browse/CB-10606) fix deprecation warning for interfaceOrientation on **iOS**
* chore: edit package.json license to match SPDX id
### 3.2.0 (Feb 09, 2016)
* [CB-10422](https://issues.apache.org/jira/browse/CB-10422) Splashscreen displays black screen with no image on Android
* [CB-10412](https://issues.apache.org/jira/browse/CB-10412) AutoHideSplashScreen "false" isn't taken in account on iOS
* [CB-9516](https://issues.apache.org/jira/browse/CB-9516) Android SplashScreen - Spinner Does Not Display
* [CB-9094](https://issues.apache.org/jira/browse/CB-9094) Smarter autohide logic on Android
* [CB-8396](https://issues.apache.org/jira/browse/CB-8396) Add AutoHideSplashScreen logic to Android's Splashscreen
### 3.1.0 (Jan 15, 2016)
* [CB-9538](https://issues.apache.org/jira/browse/CB-9538) Implementing `FadeSplashScreen` feature for **Android**
* [CB-9240](https://issues.apache.org/jira/browse/CB-9240) Cordova splash screen plugin **iPad** landscape mode issue
* [CB-10263](https://issues.apache.org/jira/browse/CB-10263) Fix splashscreen plugin filenames for Asset Catalog
* [CB-9374](https://issues.apache.org/jira/browse/CB-9374) **Android** add `SplashShowOnlyFirstTime` as preference
* [CB-10244](https://issues.apache.org/jira/browse/CB-10244) Don't rotate the **iPhone 6 Plus** splash
* [CB-9043](https://issues.apache.org/jira/browse/CB-9043) Fix the **ios** splashscreen being deformed on orientation change
* [CB-10079](https://issues.apache.org/jira/browse/CB-10079) Splashscreen plugin does not honor `SplashScreenDelay` on **iOS**
* [CB-10231](https://issues.apache.org/jira/browse/CB-10231) Fix `FadeSplashScreen` to default to true on **iOS**
### 3.0.0 (Nov 18, 2015)
* [CB-10035](https://issues.apache.org/jira/browse/CB-10035) Updated `RELEASENOTES` to be newest to oldest
* Fixing contribute link.
* [CB-9750](https://issues.apache.org/jira/browse/CB-9750) `FadeSplashDuration` is now in `msecs`
* [CB-8875](https://issues.apache.org/jira/browse/CB-8875) `FadeSplashScreen` was not fading
* [CB-9467](https://issues.apache.org/jira/browse/CB-9467) SplashScreen does not show any image in hosted app on **Windows 10**
* [CB-7282](https://issues.apache.org/jira/browse/CB-7282) Document `AutoHideSplashScreenpreference`
* [CB-9327](https://issues.apache.org/jira/browse/CB-9327) - Splashscreen not receiving `CDVPageLoadNotification`
* WP8: Avoid config `value` of a wrong element.
### 2.1.0 (Jun 17, 2015)
* added missing license headers
* [CB-9128](https://issues.apache.org/jira/browse/CB-9128) cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen
* fix npm md issue
* Fixed iOS unit tests.
* [CB-3562](https://issues.apache.org/jira/browse/CB-3562): Disable screen rotation for iPhone when splash screen is shown. (closes #47)
* [CB-8988](https://issues.apache.org/jira/browse/CB-8988): Fix rotation on iOS/iPad (closes #46)
* [CB-8904](https://issues.apache.org/jira/browse/CB-8904): Don't reset the static variable when it's destroyed, otherwise we might as well just have a member variable
* Removed wp7 from `plugin.xml` and package.json
* [CB-8750](https://issues.apache.org/jira/browse/CB-8750) [wp8]: Rewrite resoultion helper
* [CB-8750](https://issues.apache.org/jira/browse/CB-8750) [wp8]: Allow resolution-specific splashscreen images
* [CB-8758](https://issues.apache.org/jira/browse/CB-8758) [wp8]: UnauthorizedAccessException on hide()
### 2.0.0 (Apr 15, 2015)
* give users a way to install the bleeding edge.
* [CB-8746](https://issues.apache.org/jira/browse/CB-8746) gave plugin major version bump
* [CB-8797](https://issues.apache.org/jira/browse/CB-8797) - Splashscreen preferences FadeSplashScreenDuration and FadeSplashScreen (iOS) are missing
* [CB-8836](https://issues.apache.org/jira/browse/CB-8836) - Crashes after animating splashscreen
* [CB-8753](https://issues.apache.org/jira/browse/CB-8753) android: Fix missing import in previous commit
* [CB-8753](https://issues.apache.org/jira/browse/CB-8753) android: Adds `SplashMaintainAspectRatio` preference (close #43)
* [CB-8683](https://issues.apache.org/jira/browse/CB-8683) changed plugin-id to pacakge-name
* [CB-8653](https://issues.apache.org/jira/browse/CB-8653) properly updated translated docs to use new id
* [CB-8653](https://issues.apache.org/jira/browse/CB-8653) updated translated docs to use new id
* [CB-8345](https://issues.apache.org/jira/browse/CB-8345) Make default for splashscreen resource "screen" (which is what template and CLI assume it to be)
* Revert "CB-8345 android: Make "splash" the default resource ID instead of null"
* Use TRAVIS_BUILD_DIR, install paramedic by npm
* [CB-8345](https://issues.apache.org/jira/browse/CB-8345) android: Make "splash" the default resource ID instead of null
* docs: added Windows to supported platforms
* [CB-7964](https://issues.apache.org/jira/browse/CB-7964) Add cordova-plugin-splashscreen support for browser platform
* [CB-8653](https://issues.apache.org/jira/browse/CB-8653) Updated Readme
* [wp8] oops, Added back config parse result checks
* [WP8] code cleanup, minor refactors, comments to clarify some stuff.
* Extend WP8 Splash Screen to respect SplashScreen and SplashScreenDelay preferences from config file
* [CB-8574](https://issues.apache.org/jira/browse/CB-8574) Integrate TravisCI
* [CB-8438](https://issues.apache.org/jira/browse/CB-8438) cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen
* [CB-8538](https://issues.apache.org/jira/browse/CB-8538) Added package.json file
* [CB-8397](https://issues.apache.org/jira/browse/CB-8397) Add support to 'windows' for showing the Windows Phone splashscreen
### 1.0.0 (Feb 04, 2015)
* [CB-8351](https://issues.apache.org/jira/browse/CB-8351) ios: Stop using deprecated IsIpad macro
* [CB-3679](https://issues.apache.org/jira/browse/CB-3679) Add engine tag for Android >= 3.6.0 due to use of `preferences`
* [CB-3679](https://issues.apache.org/jira/browse/CB-3679) Make SplashScreen plugin compatible with cordova-android@4.0.x
### 0.3.5 (Dec 02, 2014)
* [CB-7204](https://issues.apache.org/jira/browse/CB-7204) - Race condition when hiding and showing spinner (closes #21)
* [CB-7700](https://issues.apache.org/jira/browse/CB-7700) cordova-plugin-splashscreen documentation translation: cordova-plugin-splashscreen
### 0.3.4 (Oct 03, 2014)
* Finalized iOS splash screen (image name) tests. 176 tests in all, 44 for each type of device (iPad, iPhone, iPhone5, iPhone6, iPhone 6 Plus).
* [CB-7633](https://issues.apache.org/jira/browse/CB-7633) - (Re-fix based on updated unit tests) iPhone 6 Plus support
* Updated iOS tests for locked orientations
* Added more iOS splash screen tests.
* [CB-7633](https://issues.apache.org/jira/browse/CB-7633) - Add support for iPhone 6/6+
* Added failing iPhone 6/6 Plus tests.
* Added 'npm test'
* [CB-7663](https://issues.apache.org/jira/browse/CB-7663) - iOS unit tests for splash screen
* Properly formatted splashscreen preference docs.
### 0.3.3 (Sep 17, 2014)
* [CB-7249](https://issues.apache.org/jira/browse/CB-7249) cordova-plugin-splashscreen documentation translation
* Renamed test dir, added nested `plugin.xml`
* added documentation for manual tests
* [CB-7196](https://issues.apache.org/jira/browse/CB-7196) port splashscreen tests to framework
### 0.3.2 (Aug 06, 2014)
* [CB-6127](https://issues.apache.org/jira/browse/CB-6127) Updated translations for docs
* [CB-7041](https://issues.apache.org/jira/browse/CB-7041) ios: Fix image filename logic when setting the iPad splash screen
* fixes Splashscreen crash on WP8
* Remove outdated doc
### 0.3.1 (Jun 05, 2014)
* documentation translation: cordova-plugin-splashscreen
@@ -64,10 +224,48 @@
* Lisa testing pulling in plugins for plugin: cordova-plugin-splashscreen
* Lisa testing pulling in plugins for plugin: cordova-plugin-splashscreen
* Lisa testing pulling in plugins for plugin: cordova-plugin-splashscreen
* CB-6810 Add license to CONTRIBUTING.md
* [CB-6810](https://issues.apache.org/jira/browse/CB-6810) Add license to CONTRIBUTING.md
* [wp8] updated quirk for and combined iOS,WP8,BB10 quirks as they are all the same
* [wp] implemented OnInit so splash screen can be shown before cordova page is loaded
* [wp] plugin must be autoloaded for AutoHideSplashScreen preference to work
* CB-6483 Use splash screen image from manifest on Windows8
* CB-6491 add CONTRIBUTING.md
* [CB-6483](https://issues.apache.org/jira/browse/CB-6483) Use splash screen image from manifest on Windows8
* [CB-6491](https://issues.apache.org/jira/browse/CB-6491) add CONTRIBUTING.md
* Revert "Merge branch 'tizen' of http://github.com/siovene/cordova-plugin-splashscreen"
### 0.3.0 (Apr 17, 2014)
* Add Tizen support to plugin
* [CB-6422](https://issues.apache.org/jira/browse/CB-6422): [windows8] use cordova/exec/proxy
* [CB-4051](https://issues.apache.org/jira/browse/CB-4051): [ios] - Re-fix - Splashscreen rotation problem (closes #13)
* [CB-6460](https://issues.apache.org/jira/browse/CB-6460): Update license headers
* [CB-6465](https://issues.apache.org/jira/browse/CB-6465): Add license headers to Tizen code
* Add NOTICE file
### 0.2.7 (Feb 05, 2014)
* [CB-3562](https://issues.apache.org/jira/browse/CB-3562) Fix aspect ratio on landscape-only iPhone applications
* [CB-4051](https://issues.apache.org/jira/browse/CB-4051) fix for splashscreen rotation problem
### 0.2.6 (Jan 02, 2014)
* [CB-5658](https://issues.apache.org/jira/browse/CB-5658) Add doc/index.md for Splashscreen plugin
* Handle error when splash image is missing.
### 0.2.5 (Dec 4, 2013)
* add ubuntu platform
* Added amazon-fireos platform. Change to use amazon-fireos as a platform if the user agent string contains 'cordova-amazon-fireos'
* [CB-5124](https://issues.apache.org/jira/browse/CB-5124) - Remove splashscreen config.xml values from iOS Configuration Docs, move to plugin docs
### 0.2.4 (Oct 28, 2013)
* [CB-5128](https://issues.apache.org/jira/browse/CB-5128): add repo + issue tag to `plugin.xml` for splashscreen plugin
* [CB-5010](https://issues.apache.org/jira/browse/CB-5010) Incremented plugin version on dev branch.
### 0.2.3 (Oct 9, 2013)
* [CB-4806](https://issues.apache.org/jira/browse/CB-4806) Re-fix Update splashscreen image bounds for iOS 7
* [CB-4934](https://issues.apache.org/jira/browse/CB-4934) plugin-splashscreen should not show by default on Windows8
* [CB-4929](https://issues.apache.org/jira/browse/CB-4929) plugin-splashscreen not loading proxy windows8
* [CB-4915](https://issues.apache.org/jira/browse/CB-4915) Incremented plugin version on dev branch.
### 0.2.2 (Sept 25, 2013)
* [CB-4889](https://issues.apache.org/jira/browse/CB-4889) bumping&resetting version
* [CB-4889](https://issues.apache.org/jira/browse/CB-4889) renaming org.apache.cordova.core.splashscreen to org.apache.cordova.splashscreen
* Rename CHANGELOG.md -> RELEASENOTES.md
* [CB-4806](https://issues.apache.org/jira/browse/CB-4806) Update splashscreen image bounds for iOS 7
* [CB-4752](https://issues.apache.org/jira/browse/CB-4752) Incremented plugin version on dev branch.

View File

@@ -1,84 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
Dieses Plugin zeigt und verbirgt einen Splash-Screen beim Start der Anwendung.
## Installation
cordova plugin add org.apache.cordova.splashscreen
## Unterstützte Plattformen
* Amazon Fire OS
* Android
* BlackBerry 10
* iOS
* Windows Phone 7 und 8
* Windows 8
## Methoden
* SplashScreen.Show
* SplashScreen.Hide
### Android Macken
In Ihrem "config.xml" müssen Sie die folgende Einstellung hinzufügen
`<preference name="splashscreen" value="foo" />`
Wo Foo ist der Name der Datei Splashscreen. Vorzugsweise eine 9-Patch-Datei. Stellen Sie sicher, Splashcreen Dateien zu Ihrem Res/Xml-Verzeichnis unter den entsprechenden Ordnern hinzuzufügen.
Für Android müssen Sie auch Ihre wichtigsten Java-Projekte-Datei bearbeiten. Sie müssen hinzufügen, einen zweiten Parameter, die eine zeitliche Verzögerung zu Ihren super.loadUrl darstellt.
`super.loadUrl(Config.getStartUrl(), 10000);`
## SplashScreen.Hide
Schließen Sie den Splash-Screen.
navigator.splashscreen.hide();
### BlackBerry 10 Quirk
Die `config.xml` der Datei `AutoHideSplashScreen` muss`false`.
### iOS Quirk
Die `config.xml` Datei `AutoHideSplashScreen` muss `false` . Verstecken den Splash-Screen für zwei Sekunden Verzögerung, fügen Sie einen Timer wie die folgende in der `deviceready` -Ereignishandler:
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## SplashScreen.Show
Zeigt den Begrüßungsbildschirm.
navigator.splashscreen.show();
Ihre Anwendung kann nicht aufgerufen werden `navigator.splashscreen.show()` bis die app gestartet hat und das `deviceready` -Ereignis ausgelöst hat. Aber da in der Regel der Splash-Screen soll sichtbar sein, bevor die Anwendung gestartet wurde, scheint die Niederlage der Zweck des Begrüßungsbildschirms. Somit einige Konfiguration in `config.xml` wird automatisch `show` den Splash-Screen unmittelbar nach Ihrer app starten und bevor es voll gestartet und hat das `deviceready` Ereignis. Weitere Informationen zu dieser Konfiguration finden Sie unter [Symbole und Splash-Screens][1] . Aus diesem Grund ist es unwahrscheinlich, dass Sie aufrufen müssen `navigator.splashscreen.show()` den Splash-Screen beim Starten der app sichtbar zu machen.
[1]: http://cordova.apache.org/docs/en/edge/config_ref_images.md.html

View File

@@ -1,84 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
Este plugin muestra y esconde una pantalla de bienvenida durante el inicio de la aplicación.
## Instalación
cordova plugin add org.apache.cordova.splashscreen
## Plataformas soportadas
* Amazon fuego OS
* Android
* BlackBerry 10
* iOS
* Windows Phone 7 y 8
* Windows 8
## Métodos
* splashscreen.show
* splashscreen.hide
### Rarezas Android
En el archivo config.xml, tienes que añadir la siguiente preferencia
`<preference name="splashscreen" value="foo" />`
Donde foo es el nombre del archivo splashscreen. Preferiblemente un archivo de 9 parche. Asegúrese de agregar tus archivos splashcreen en tu directorio res/xml bajo las carpetas apropiadas.
Para Android, también tienes que editar el archivo java principales proyectos. Debe agregar un segundo parámetro que representa un intervalo de tiempo para su super.loadUrl.
`super.loadUrl(Config.getStartUrl(), 10000);`
## splashscreen.hide
Despedir a la pantalla de bienvenida.
navigator.splashscreen.hide();
### BlackBerry 10 chanfle
El `config.xml` del archivo `AutoHideSplashScreen` ajuste debe ser`false`.
### iOS Quirk
El `config.xml` del archivo `AutoHideSplashScreen` la configuración debe ser `false` . Para retrasar oculta la pantalla splash durante dos segundos, agregue un temporizador como la siguiente en el `deviceready` controlador de eventos:
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## splashscreen.show
Muestra la pantalla de bienvenida.
navigator.splashscreen.show();
La aplicación no se puede llamar `navigator.splashscreen.show()` hasta que haya iniciado la aplicación y el `deviceready` evento ha despedido. Pero puesto que normalmente la pantalla está destinada a ser visible antes de que comience su aplicación, que parecería que el propósito de la pantalla de bienvenida. Proporcionar cierta configuración en `config.xml` automáticamente `show` la pantalla de presentación inmediatamente después de su lanzamiento de la aplicación y antes de ser completamente ha iniciado y recibió el `deviceready` evento. Ver [los iconos y salpicadura pantallas][1] para obtener más información sobre haciendo esta configuración. Por esta razón, es poco probable que necesitas llamar a `navigator.splashscreen.show()` para hacer la pantalla visible para el inicio de la aplicación.
[1]: http://cordova.apache.org/docs/en/edge/config_ref_images.md.html

View File

@@ -1,84 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
Ce plugin affiche et masque un écran de démarrage lors du lancement de l'application.
## Installation
cordova plugin add org.apache.cordova.splashscreen
## Plates-formes prises en charge
* Amazon Fire OS
* Android
* BlackBerry 10
* iOS
* Windows Phone 7 et 8
* Windows 8
## Méthodes
* splashscreen.Show
* splashscreen.Hide
### Quirks Android
Dans votre fichier config.xml, vous devez ajouter la préférence suivante
`<preference name="splashscreen" value="foo" />`
Où foo est le nom du fichier splashscreen. Préférence un fichier de 9 correctif. Assurez-vous d'ajouter vos fichiers splashcreen dans votre répertoire res/xml dans les dossiers appropriés.
Pour Android, vous devez également modifier votre fichier java principal de projets. Vous devez ajouter un deuxième paramètre, ce qui représente un temps de retard à votre super.loadUrl.
`super.loadUrl(Config.getStartUrl(), 10000);`
## splashscreen.Hide
Fait disparaître l'écran de démarrage.
navigator.splashscreen.hide();
### BlackBerry 10 Quirk
La `config.xml` du fichier `AutoHideSplashScreen` doit être`false`.
### iOS Quirk
Le paramètre `AutoHideSplashScreen</code du fichier <code>config.xml` doit être réglé à `false` . Pour retarder la disparition de l'écran de démarrage de deux secondes, ajoute un minuteur comme ci-dessous dans le gestionnaire d'événements `deviceready` :
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## splashscreen.Show
Affiche l'écran de démarrage.
navigator.splashscreen.show();
Votre application ne peut pas appeler `navigator.splashscreen.show()` jusqu'à ce que l'application a commencé et le `deviceready` événement a été déclenché. Mais puisqu'en général, l'écran de démarrage est destiné à être visible avant que votre application a commencé, qui semblerait à l'encontre des objectifs de l'écran de démarrage. Fournir une configuration en `config.xml` sera automatiquement `show` l'écran de démarrage immédiatement après votre lancement de l'app et avant qu'il a complètement démarré et a reçu le `deviceready` événement. Voir les [icônes et les écrans de démarrage][1] pour plus d'informations sur la conduite de cette configuration. Pour cette raison, il est peu probable que vous devez appeler `navigator.splashscreen.show()` pour rendre l'écran de démarrage visible pour le démarrage de l'application.
[1]: http://cordova.apache.org/docs/en/edge/config_ref_images.md.html

View File

@@ -1,90 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
This plugin displays and hides a splash screen during application launch.
## Installation
cordova plugin add org.apache.cordova.splashscreen
## Supported Platforms
- Amazon Fire OS
- Android
- BlackBerry 10
- iOS
- Windows Phone 7 and 8
- Windows 8
## Methods
- splashscreen.show
- splashscreen.hide
### Android Quirks
In your config.xml, you need to add the following preference
`<preference name="splashscreen" value="foo" />`
Where foo is the name of the splashscreen file. Preferably a 9 patch file. Make sure to add your splashcreen files to your res/xml directory under the appropriate folders.
For Android, you also have to edit your projects main java file. You must add a second parameter representing a time delay to your super.loadUrl.
`super.loadUrl(Config.getStartUrl(), 10000);`
## splashscreen.hide
Dismiss the splash screen.
navigator.splashscreen.hide();
### BlackBerry 10, WP8, iOS Quirk
The `config.xml` file's `AutoHideSplashScreen` setting must be
`false`. To delay hiding the splash screen for two seconds, add a
timer such as the following in the `deviceready` event handler:
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## splashscreen.show
Displays the splash screen.
navigator.splashscreen.show();
Your application cannot call `navigator.splashscreen.show()` until the app has
started and the `deviceready` event has fired. But since typically the splash
screen is meant to be visible before your app has started, that would seem to
defeat the purpose of the splash screen. Providing some configuration in
`config.xml` will automatically `show` the splash screen immediately after your
app launch and before it has fully started and received the `deviceready`
event. See [Icons and Splash Screens](http://cordova.apache.org/docs/en/edge/config_ref_images.md.html)
for more information on doing this configuration. For this reason, it is
unlikely you need to call `navigator.splashscreen.show()` to make the splash
screen visible for app startup.

View File

@@ -1,84 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
Questo plugin Visualizza e nasconde una schermata iniziale durante l'avvio dell'applicazione.
## Installazione
cordova plugin add org.apache.cordova.splashscreen
## Piattaforme supportate
* Amazon fuoco OS
* Android
* BlackBerry 10
* iOS
* Windows Phone 7 e 8
* Windows 8
## Metodi
* splashscreen
* splashscreen.Hide
### Stranezze Android
Nel vostro config. xml, è necessario aggiungere la seguente preferenza
`<preference name="splashscreen" value="foo" />`
Dove foo è il nome del file splashscreen. Preferibilmente un file di 9 patch. Assicurati di aggiungere i tuoi file splashcreen res/xml nella directory sotto cartelle appropriate.
Per Android, devi anche modificare il file di progetti java principale. È necessario aggiungere un secondo parametro che rappresenta un tempo di ritardo alla tua super.loadUrl.
`super.loadUrl(Config.getStartUrl(), 10000);`
## splashscreen.Hide
Respingere la schermata iniziale.
navigator.splashscreen.hide();
### BlackBerry 10 Quirk
Il `config.xml` di file `AutoHideSplashScreen` impostazione deve essere`false`.
### iOS Quirk
Il `config.xml` di file `AutoHideSplashScreen` impostazione deve essere `false` . Per ritardare nascondendo la schermata iniziale per due secondi, aggiungere un timer ad esempio nel `deviceready` gestore di evento:
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## splashscreen
Visualizza la schermata iniziale.
navigator.splashscreen.show();
L'applicazione non può chiamare `navigator.splashscreen.show()` fino a quando ha iniziato l'app e il `deviceready` ha generato l'evento. Ma poiché in genere la schermata iniziale è destinata ad essere visibile prima app ha iniziato, che sembrerebbe per sconfiggere lo scopo della schermata iniziale. Fornendo qualche configurazione in `config.xml` verrà automaticamente `show` la schermata iniziale subito dopo il lancio dell'app e prima che completamente ha iniziato e ha ricevuto il `deviceready` evento. Per ulteriori informazioni su facendo questa configurazione, vedere [icone e schermate iniziali][1] . Per questo motivo, è improbabile che dovete chiamare `navigator.splashscreen.show()` per rendere la schermata visibile per avvio di app.
[1]: http://cordova.apache.org/docs/en/edge/config_ref_images.md.html

View File

@@ -1,84 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
このプラグインが表示され、アプリケーションの起動中にスプラッシュ スクリーンを非表示にします。
## インストール
cordova plugin add org.apache.cordova.splashscreen
## サポートされているプラットフォーム
* アマゾン火 OS
* アンドロイド
* ブラックベリー 10
* iOS
* Windows Phone 7 と 8
* Windows 8
## メソッド
* splashscreen.show
* splashscreen.hide
### Android の癖
あなた config.xml で、以下の設定を追加する必要があります。
`<preference name="splashscreen" value="foo" />`
Foo は splashscreen ファイルの名前です。できれば 9 パッチ ファイルです。解像度/xml ディレクトリの適切なフォルダーの下に splashcreen ファイルを追加することを確認します。
アンドロイドのためまた、プロジェクトの主要な java ファイルを編集する必要があります。あなたの super.loadUrl への遅延時間を表す 2 番目のパラメーターを追加する必要があります。
`super.loadUrl(Config.getStartUrl(), 10000);`
## splashscreen.hide
スプラッシュ スクリーンを閉じます。
navigator.splashscreen.hide();
### ブラックベリー 10 気まぐれ
`config.xml`ファイルの `AutoHideSplashScreen` 設定する必要があります`false`.
### iOS の気まぐれ
`config.xml`ファイルの `AutoHideSplashScreen` 設定する必要があります `false` 。 遅延を 2 秒間スプラッシュ スクリーンを非表示、する、タイマーを追加しますで次のように `deviceready` イベント ハンドラー。
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## splashscreen.show
スプラッシュ画面が表示されます。
navigator.splashscreen.show();
アプリケーションを呼び出すことはできません `navigator.splashscreen.show()` 、アプリが開始されるまで、 `deviceready` イベントが発生します。 しかし、以来、通常スプラッシュ画面アプリ開始前に表示するものですと思われる、スプラッシュ スクリーンの目的の敗北します。 いくつかの構成を提供する `config.xml` は自動的に `show` スプラッシュ画面、アプリを起動後すぐに、それが完全に起動し、受信する前に、 `deviceready` イベント。 詳細についてはこの構成を行うには、[アイコンとスプラッシュ画面][1]を参照してください。 このような理由から、それは可能性を呼び出す必要があります `navigator.splashscreen.show()` アプリ起動時のスプラッシュ画面を見やすくします。
[1]: http://cordova.apache.org/docs/en/edge/config_ref_images.md.html

View File

@@ -1,84 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
이 플러그인은 표시 하 고 응용 프로그램 실행 하는 동안 시작 화면을 숨깁니다.
## 설치
cordova plugin add org.apache.cordova.splashscreen
## 지원 되는 플랫폼
* 아마존 화재 운영 체제
* 안 드 로이드
* 블랙베리 10
* iOS
* Windows Phone 7과 8
* 윈도우 8
## 메서드
* splashscreen.show
* splashscreen.hide
### 안 드 로이드 단점
당신의 config.xml에 다음 기본 설정 추가 해야
`<preference name="splashscreen" value="foo" />`
여기서 foo splashscreen 파일의 이름입니다. 가급적 이면 9 패치 파일입니다. 적절 한 폴더 아래 res/xml 디렉토리에 splashcreen 파일을 추가 해야 합니다.
안 드 로이드, 또한 프로젝트 주요 자바 파일을 편집 해야 합니다. 당신의 super.loadUrl 시간 지연을 나타내는 두 번째 매개 변수를 추가 해야 합니다.
`super.loadUrl(Config.getStartUrl(), 10000);`
## splashscreen.hide
시작 화면을 닫습니다.
navigator.splashscreen.hide();
### 블랙베리 10 특질
`config.xml`파일의 `AutoHideSplashScreen` 설정을 해야 합니다`false`.
### iOS 특질
`config.xml`파일의 `AutoHideSplashScreen` 설정을 해야 합니다 `false` . 2 초 동안 시작 화면을 숨기고 지연에 다음과 같이 타이머 추가 `deviceready` 이벤트 처리기:
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## splashscreen.show
시작 화면을 표시합니다.
navigator.splashscreen.show();
응용 프로그램 호출할 수 없습니다 `navigator.splashscreen.show()` 응용 프로그램은 시작 될 때까지 및 `deviceready` 이벤트를 해 고 했다. 하지만 그 스플래시 스크린의 목적 것 같다 일반적으로 시작 화면이 당신의 애플 리 케이 션 시작 하기 전에 표시 될 운명이 다, 이후. 몇 가지 구성을 제공 `config.xml` 자동으로 `show` 시작 화면 응용 프로그램 실행 후 즉시 및 그것은 완벽 하 게 시작 하 고 받은 전에 `deviceready` 이벤트. 이 구성 하 고 자세한 내용은 [아이콘 및 시작 화면을][1] 참조 하십시오. 이러한 이유로, 그것은 가능성이 호출 해야 `navigator.splashscreen.show()` 시작 화면은 응용 프로그램 시작에 대 한 표시 되도록 합니다.
[1]: http://cordova.apache.org/docs/en/edge/config_ref_images.md.html

View File

@@ -1,84 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
Ten plugin wyświetla i ukrywa ekran powitalny podczas uruchamiania aplikacji.
## Instalacji
cordova plugin add org.apache.cordova.splashscreen
## Obsługiwane platformy
* Amazon ogień OS
* Android
* Jeżyna 10
* iOS
* Windows Phone 7 i 8
* Windows 8
## Metody
* splashscreen.show
* splashscreen.Hide
### Android dziwactwa
W pliku config.xml musisz dodać następujące preferencje
`<preference name="splashscreen" value="foo" />`
Gdzie foo jest nazwą pliku ekranu powitalnego. Najlepiej plik poprawki 9. Upewnij się dodać pliki splashcreen do katalogu res/xml w odpowiednich folderach.
Dla Androida należy edytować plik java głównych projektów. Należy dodać drugi parametr reprezentujących opóźnienie do Twojej super.loadUrl.
`super.loadUrl(Config.getStartUrl(), 10000);`
## splashscreen.Hide
Odrzucić ten opryskaæ têcza.
navigator.splashscreen.hide();
### Zrządzenie blackBerry 10
`config.xml`Pliku `AutoHideSplashScreen` ustawienie musi być`false`.
### iOS dziwactwo
`config.xml`Pliku `AutoHideSplashScreen` ustawienie musi być `false` . Opóźnienia, ukrywanie ekranu powitalnego przez dwie sekundy, dodać timer następujących w `deviceready` obsługa zdarzeń:
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## splashscreen.show
Wyświetla ekran powitalny.
navigator.splashscreen.show();
Aplikacja nie może wywołać `navigator.splashscreen.show()` aż aplikacja została uruchomiona i `deviceready` imprezy został zwolniony. Ale ponieważ zazwyczaj opryskać tęcza ma być widoczne przed rozpoczęciem aplikacji, wydaje się sprzeczne z celem ekranu powitalnego. Dostarczanie niektórych konfiguracji w `config.xml` będzie automatycznie `show` ekran powitalny, natychmiast po uruchomienie aplikacji i przed pełni rozpoczął i otrzymał `deviceready` zdarzenie. Aby uzyskać więcej informacji na robienie tej konfiguracji, zobacz [ikony i ekrany powitalne w aplikacjach][1] . Z tego powodu, jest mało prawdopodobne, należy zadzwonić `navigator.splashscreen.show()` Aby wyświetlić ekran powitalny dla uruchamiania aplikacji.
[1]: http://cordova.apache.org/docs/en/edge/config_ref_images.md.html

View File

@@ -1,84 +0,0 @@
<!---
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
# org.apache.cordova.splashscreen
這個外掛程式顯示和隱藏在應用程式啟動期間的初始螢幕。
## 安裝
cordova plugin add org.apache.cordova.splashscreen
## 支援的平臺
* 亞馬遜火 OS
* Android 系統
* 黑莓 10
* iOS
* Windows Phone 7 和 8
* Windows 8
## 方法
* splashscreen.show
* splashscreen.hide
### Android 的怪癖
您需要在您的 config.xml 中添加下列優先選項
`<preference name="splashscreen" value="foo" />`
美孚在哪裡的閃屏檔的名稱。最好是 9 修補程式檔。請確保您的 splashcreen 檔添加到相應的資料夾下的 res/xml 目錄。
Android 系統,也可以編輯您的專案主要的 java 檔。您必須添加第二個參數表示一個時間延遲到你 super.loadUrl。
`super.loadUrl(Config.getStartUrl(), 10000);`
## splashscreen.hide
解雇的初始螢幕。
navigator.splashscreen.hide();
### 黑莓 10 怪癖
`config.xml`檔的 `AutoHideSplashScreen` 設置必須為`false`.
### iOS 怪癖
`config.xml`檔的 `AutoHideSplashScreen` 設置必須為 `false` 。 若要延遲兩秒鐘隱藏的閃屏,添加如下所示在計時器 `deviceready` 事件處理常式:
setTimeout(function() {
navigator.splashscreen.hide();
}, 2000);
## splashscreen.show
顯示初始螢幕。
navigator.splashscreen.show();
您的應用程式不能調用 `navigator.splashscreen.show()` 直到應用程式已啟動和 `deviceready` 觸發了事件。 但因為通常的閃屏為了是可見的在您的應用程式啟動之前,似乎要打敗閃屏的目的。 提供一些配置在 `config.xml` 自動將 `show` 的初始螢幕,您的應用程式啟動後立即和它在之前已完全開始收到 `deviceready` 事件。 做這種配置的詳細資訊,請參閱[圖示和閃屏][1]。 出於此原因,它是不太可能你需要調用 `navigator.splashscreen.show()` ,使初始螢幕可見為應用程式啟動。
[1]: http://cordova.apache.org/docs/en/edge/config_ref_images.md.html

1724
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

48
package.json Normal file
View File

@@ -0,0 +1,48 @@
{
"name": "cordova-plugin-splashscreen",
"version": "6.0.1-dev",
"description": "Cordova Splashscreen Plugin",
"types": "./types/index.d.ts",
"cordova": {
"id": "cordova-plugin-splashscreen",
"platforms": [
"android",
"windows",
"browser"
]
},
"repository": "github:apache/cordova-plugin-splashscreen",
"bugs": "https://github.com/apache/cordova-plugin-splashscreen/issues",
"keywords": [
"cordova",
"splashscreen",
"ecosystem:cordova",
"cordova-android",
"cordova-windows",
"cordova-browser"
],
"scripts": {
"test": "npm run lint",
"lint": "eslint ."
},
"engines": {
"cordovaDependencies": {
"2.0.0": {
"cordova-android": ">=3.6.0"
},
">=4.0.0": {
"cordova-android": ">=3.6.0",
"cordova-windows": ">=4.4.0"
},
"7.0.0": {
"cordova": ">100"
}
}
},
"author": "Apache Software Foundation",
"license": "Apache-2.0",
"devDependencies": {
"@cordova/eslint-config": "^3.0.0"
},
"homepage": "https://github.com/apache/cordova-plugin-splashscreen#readme"
}

View File

@@ -19,108 +19,53 @@
-->
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
id="org.apache.cordova.splashscreen"
version="0.3.1">
id="cordova-plugin-splashscreen"
version="6.0.1-dev">
<name>Splashscreen</name>
<description>Cordova Splashscreen Plugin</description>
<license>Apache 2.0</license>
<keywords>cordova,splashscreen</keywords>
<repo>https://git-wip-us.apache.org/repos/asf/cordova-plugin-splashscreen.git</repo>
<issue>https://issues.apache.org/jira/browse/CB/component/12320653</issue>
<repo>https://github.com/apache/cordova-plugin-splashscreen.git</repo>
<issue>https://github.com/apache/cordova-plugin-splashscreen/issues</issue>
<js-module src="www/splashscreen.js" name="SplashScreen">
<clobbers target="navigator.splashscreen" />
</js-module>
<engines>
<engine name="cordova-android" version=">=3.6.0" /><!-- Requires CordovaPlugin.preferences -->
<engine name="cordova-windows" version=">=4.4.0" />
</engines>
<!-- android -->
<platform name="android">
<config-file target="res/xml/config.xml" parent="/*">
<feature name="SplashScreen">
<param name="android-package" value="org.apache.cordova.splashscreen.SplashScreen"/>
</feature>
</config-file>
<source-file src="src/android/SplashScreen.java" target-dir="src/org/apache/cordova/splashscreen" />
</platform>
<!-- amazon-fireos -->
<platform name="amazon-fireos">
<config-file target="res/xml/config.xml" parent="/*">
<feature name="SplashScreen">
<param name="android-package" value="org.apache.cordova.splashscreen.SplashScreen"/>
</feature>
</config-file>
<source-file src="src/android/SplashScreen.java" target-dir="src/org/apache/cordova/splashscreen" />
</platform>
<!-- ubuntu -->
<platform name="ubuntu">
<header-file src="src/ubuntu/splashscreen.h" />
<source-file src="src/ubuntu/splashscreen.cpp" />
</platform>
<!-- ios -->
<platform name="ios">
<config-file target="config.xml" parent="/*">
<feature name="SplashScreen">
<param name="ios-package" value="CDVSplashScreen"/>
<param name="onload" value="true"/>
</feature>
</config-file>
<header-file src="src/ios/CDVSplashScreen.h" />
<source-file src="src/ios/CDVSplashScreen.m" />
<framework src="CoreGraphics.framework" />
</platform>
<!-- blackberry10 -->
<platform name="blackberry10">
<source-file src="src/blackberry10/index.js" target-dir="SplashScreen" />
<config-file target="www/config.xml" parent="/widget">
<feature name="SplashScreen" value="SplashScreen"/>
</config-file>
</platform>
<!-- wp7 -->
<platform name="wp7">
<config-file target="config.xml" parent="/*">
<feature name="SplashScreen">
<param name="wp-package" value="SplashScreen"/>
<param name="android-package" value="org.apache.cordova.splashscreen.SplashScreen"/>
<param name="onload" value="true"/>
</feature>
</config-file>
<source-file src="src/wp/SplashScreen.cs" />
</platform>
<!-- wp8 -->
<platform name="wp8">
<config-file target="config.xml" parent="/*">
<feature name="SplashScreen">
<param name="wp-package" value="SplashScreen"/>
<param name="onload" value="true"/>
</feature>
</config-file>
<source-file src="src/wp/SplashScreen.cs" />
</platform>
<!-- windows8 -->
<platform name="windows8">
<js-module src="www/windows8/SplashScreenProxy.js" name="SplashScreenProxy">
<merges target="" />
<source-file src="src/android/SplashScreen.java" target-dir="src/org/apache/cordova/splashscreen" />
<js-module src="www/splashscreen.js" name="SplashScreen">
<clobbers target="navigator.splashscreen" />
</js-module>
</platform>
<!-- tizen -->
<platform name="tizen">
<js-module src="src/tizen/SplashScreenProxy.js" name="SplashScreenProxy">
<!-- windows -->
<platform name="windows">
<js-module src="src/windows/SplashScreenProxy.js" name="SplashScreenProxy">
<runs />
</js-module>
<js-module src="www/splashscreen.js" name="SplashScreen">
<clobbers target="navigator.splashscreen" />
</js-module>
</platform>
<!-- browser -->
<platform name="browser">
<js-module src="src/browser/SplashScreenProxy.js" name="SplashScreenProxy">
<runs />
</js-module>
<js-module src="www/splashscreen.js" name="SplashScreen">
<clobbers target="navigator.splashscreen" />
</js-module>
</platform>
</plugin>

View File

@@ -19,20 +19,160 @@
package org.apache.cordova.splashscreen;
import android.app.Dialog;
import android.app.ProgressDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.res.Configuration;
import android.content.res.ColorStateList;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Handler;
import android.view.Display;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.view.WindowManager;
import android.view.animation.Animation;
import android.view.animation.AlphaAnimation;
import android.view.animation.DecelerateInterpolator;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.ProgressBar;
import android.widget.RelativeLayout;
import org.apache.cordova.CallbackContext;
import org.apache.cordova.CordovaPlugin;
import org.apache.cordova.CordovaWebView;
import org.json.JSONArray;
import org.json.JSONException;
public class SplashScreen extends CordovaPlugin {
private static final String LOG_TAG = "SplashScreen";
// Cordova 3.x.x has a copy of this plugin bundled with it (SplashScreenInternal.java).
// Enable functionality only if running on 4.x.x.
private static final boolean HAS_BUILT_IN_SPLASH_SCREEN = Integer.valueOf(CordovaWebView.CORDOVA_VERSION.split("\\.")[0]) < 4;
private static final int DEFAULT_SPLASHSCREEN_DURATION = 3000;
private static final int DEFAULT_FADE_DURATION = 500;
private static Dialog splashDialog;
private static ProgressDialog spinnerDialog;
private static boolean firstShow = true;
private static boolean lastHideAfterDelay; // https://issues.apache.org/jira/browse/CB-9094
/**
* Displays the splash drawable.
*/
private ImageView splashImageView;
/**
* Remember last device orientation to detect orientation changes.
*/
private int orientation;
// Helper to be compile-time compatible with both Cordova 3.x and 4.x.
private View getView() {
try {
return (View)webView.getClass().getMethod("getView").invoke(webView);
} catch (Exception e) {
return (View)webView;
}
}
private int getSplashId() {
int drawableId = 0;
String splashResource = preferences.getString("SplashScreen", "screen");
if (splashResource != null) {
drawableId = cordova.getActivity().getResources().getIdentifier(splashResource, "drawable", cordova.getActivity().getClass().getPackage().getName());
if (drawableId == 0) {
drawableId = cordova.getActivity().getResources().getIdentifier(splashResource, "drawable", cordova.getActivity().getPackageName());
}
}
return drawableId;
}
@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) {
if (action.equals("hide")) {
this.webView.postMessage("splashscreen", "hide");
} else if (action.equals("show")){
this.webView.postMessage("splashscreen", "show");
protected void pluginInitialize() {
if (HAS_BUILT_IN_SPLASH_SCREEN) {
return;
}
else {
// Make WebView invisible while loading URL
// CB-11326 Ensure we're calling this on UI thread
cordova.getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
getView().setVisibility(View.INVISIBLE);
}
});
int drawableId = getSplashId();
// Save initial orientation.
orientation = cordova.getActivity().getResources().getConfiguration().orientation;
if (firstShow) {
boolean autoHide = preferences.getBoolean("AutoHideSplashScreen", true);
showSplashScreen(autoHide);
}
if (preferences.getBoolean("SplashShowOnlyFirstTime", true)) {
firstShow = false;
}
}
/**
* Shorter way to check value of "SplashMaintainAspectRatio" preference.
*/
private boolean isMaintainAspectRatio () {
return preferences.getBoolean("SplashMaintainAspectRatio", false);
}
private int getFadeDuration () {
int fadeSplashScreenDuration = preferences.getBoolean("FadeSplashScreen", true) ?
preferences.getInteger("FadeSplashScreenDuration", DEFAULT_FADE_DURATION) : 0;
if (fadeSplashScreenDuration < 30) {
// [CB-9750] This value used to be in decimal seconds, so we will assume that if someone specifies 10
// they mean 10 seconds, and not the meaningless 10ms
fadeSplashScreenDuration *= 1000;
}
return fadeSplashScreenDuration;
}
@Override
public void onPause(boolean multitasking) {
if (HAS_BUILT_IN_SPLASH_SCREEN) {
return;
}
// hide the splash screen to avoid leaking a window
this.removeSplashScreen(true);
}
@Override
public void onDestroy() {
if (HAS_BUILT_IN_SPLASH_SCREEN) {
return;
}
// hide the splash screen to avoid leaking a window
this.removeSplashScreen(true);
// If we set this to true onDestroy, we lose track when we go from page to page!
//firstShow = true;
}
@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
if (action.equals("hide")) {
cordova.getActivity().runOnUiThread(new Runnable() {
public void run() {
webView.postMessage("splashscreen", "hide");
}
});
} else if (action.equals("show")) {
cordova.getActivity().runOnUiThread(new Runnable() {
public void run() {
webView.postMessage("splashscreen", "show");
}
});
} else {
return false;
}
@@ -40,4 +180,235 @@ public class SplashScreen extends CordovaPlugin {
return true;
}
@Override
public Object onMessage(String id, Object data) {
if (HAS_BUILT_IN_SPLASH_SCREEN) {
return null;
}
if ("splashscreen".equals(id)) {
if ("hide".equals(data.toString())) {
this.removeSplashScreen(false);
} else {
this.showSplashScreen(false);
}
} else if ("spinner".equals(id)) {
if ("stop".equals(data.toString())) {
getView().setVisibility(View.VISIBLE);
}
} else if ("onReceivedError".equals(id)) {
this.spinnerStop();
}
return null;
}
// Don't add @Override so that plugin still compiles on 3.x.x for a while
public void onConfigurationChanged(Configuration newConfig) {
if (newConfig.orientation != orientation) {
orientation = newConfig.orientation;
// Splash drawable may change with orientation, so reload it.
if (splashImageView != null) {
int drawableId = getSplashId();
if (drawableId != 0) {
splashImageView.setImageDrawable(cordova.getActivity().getResources().getDrawable(drawableId));
}
}
}
}
private void removeSplashScreen(final boolean forceHideImmediately) {
cordova.getActivity().runOnUiThread(new Runnable() {
public void run() {
if (splashDialog != null && splashImageView != null && splashDialog.isShowing()) {//check for non-null splashImageView, see https://issues.apache.org/jira/browse/CB-12277
final int fadeSplashScreenDuration = getFadeDuration();
// CB-10692 If the plugin is being paused/destroyed, skip the fading and hide it immediately
if (fadeSplashScreenDuration > 0 && forceHideImmediately == false) {
AlphaAnimation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setInterpolator(new DecelerateInterpolator());
fadeOut.setDuration(fadeSplashScreenDuration);
splashImageView.setAnimation(fadeOut);
splashImageView.startAnimation(fadeOut);
fadeOut.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
spinnerStop();
}
@Override
public void onAnimationEnd(Animation animation) {
if (splashDialog != null && splashImageView != null && splashDialog.isShowing()) {//check for non-null splashImageView, see https://issues.apache.org/jira/browse/CB-12277
splashDialog.dismiss();
splashDialog = null;
splashImageView = null;
}
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
} else {
spinnerStop();
splashDialog.dismiss();
splashDialog = null;
splashImageView = null;
}
}
}
});
}
/**
* Shows the splash screen over the full Activity
*/
@SuppressWarnings("deprecation")
private void showSplashScreen(final boolean hideAfterDelay) {
final int splashscreenTime = preferences.getInteger("SplashScreenDelay", DEFAULT_SPLASHSCREEN_DURATION);
final int drawableId = getSplashId();
final int fadeSplashScreenDuration = getFadeDuration();
final int effectiveSplashDuration = Math.max(0, splashscreenTime - fadeSplashScreenDuration);
lastHideAfterDelay = hideAfterDelay;
// Prevent to show the splash dialog if the activity is in the process of finishing
if (cordova.getActivity().isFinishing()) {
return;
}
// If the splash dialog is showing don't try to show it again
if (splashDialog != null && splashDialog.isShowing()) {
return;
}
if (drawableId == 0 || (splashscreenTime <= 0 && hideAfterDelay)) {
return;
}
cordova.getActivity().runOnUiThread(new Runnable() {
public void run() {
// Get reference to display
Display display = cordova.getActivity().getWindowManager().getDefaultDisplay();
Context context = webView.getContext();
// Use an ImageView to render the image because of its flexible scaling options.
splashImageView = new ImageView(context);
splashImageView.setImageResource(drawableId);
LayoutParams layoutParams = new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);
splashImageView.setLayoutParams(layoutParams);
splashImageView.setMinimumHeight(display.getHeight());
splashImageView.setMinimumWidth(display.getWidth());
// TODO: Use the background color of the webView's parent instead of using the preference.
splashImageView.setBackgroundColor(preferences.getInteger("backgroundColor", Color.BLACK));
if (isMaintainAspectRatio()) {
// CENTER_CROP scale mode is equivalent to CSS "background-size:cover"
splashImageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
}
else {
// FIT_XY scales image non-uniformly to fit into image view.
splashImageView.setScaleType(ImageView.ScaleType.FIT_XY);
}
// Create and show the dialog
splashDialog = new Dialog(context, android.R.style.Theme_Translucent_NoTitleBar);
// check to see if the splash screen should be full screen
boolean fullscreen = preferences.getBoolean("SplashFullScreen", true);
if (fullscreen || ((cordova.getActivity().getWindow().getAttributes().flags & WindowManager.LayoutParams.FLAG_FULLSCREEN)
== WindowManager.LayoutParams.FLAG_FULLSCREEN)) {
splashDialog.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
splashDialog.setContentView(splashImageView);
splashDialog.setCancelable(false);
splashDialog.show();
if (preferences.getBoolean("ShowSplashScreenSpinner", true)) {
spinnerStart();
}
// Set Runnable to remove splash screen just in case
if (hideAfterDelay) {
final Handler handler = new Handler();
handler.postDelayed(new Runnable() {
public void run() {
if (lastHideAfterDelay) {
removeSplashScreen(false);
}
}
}, effectiveSplashDuration);
}
}
});
}
// Show only spinner in the center of the screen
private void spinnerStart() {
cordova.getActivity().runOnUiThread(new Runnable() {
public void run() {
spinnerStop();
spinnerDialog = new ProgressDialog(webView.getContext());
spinnerDialog.setOnCancelListener(new DialogInterface.OnCancelListener() {
public void onCancel(DialogInterface dialog) {
spinnerDialog = null;
}
});
spinnerDialog.setCancelable(false);
spinnerDialog.setIndeterminate(true);
RelativeLayout centeredLayout = new RelativeLayout(cordova.getActivity());
centeredLayout.setGravity(Gravity.CENTER);
centeredLayout.setLayoutParams(new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
ProgressBar progressBar = new ProgressBar(webView.getContext());
RelativeLayout.LayoutParams layoutParams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
layoutParams.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE);
progressBar.setLayoutParams(layoutParams);
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP) {
String colorName = preferences.getString("SplashScreenSpinnerColor", null);
if(colorName != null){
int[][] states = new int[][] {
new int[] { android.R.attr.state_enabled}, // enabled
new int[] {-android.R.attr.state_enabled}, // disabled
new int[] {-android.R.attr.state_checked}, // unchecked
new int[] { android.R.attr.state_pressed} // pressed
};
int progressBarColor = Color.parseColor(colorName);
int[] colors = new int[] {
progressBarColor,
progressBarColor,
progressBarColor,
progressBarColor
};
ColorStateList colorStateList = new ColorStateList(states, colors);
progressBar.setIndeterminateTintList(colorStateList);
}
}
centeredLayout.addView(progressBar);
spinnerDialog.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
spinnerDialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
spinnerDialog.show();
spinnerDialog.setContentView(centeredLayout);
}
});
}
private void spinnerStop() {
cordova.getActivity().runOnUiThread(new Runnable() {
public void run() {
if (spinnerDialog != null && spinnerDialog.isShowing()) {
spinnerDialog.dismiss();
spinnerDialog = null;
}
}
});
}
}

View File

@@ -1,28 +0,0 @@
/*
* Copyright 2013 Research In Motion Limited.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
module.exports = {
show: function (success, fail, args, env) {
var result = new PluginResult(args, env);
result.error("Not supported on platform", false);
},
hide: function (success, fail, args, env) {
var result = new PluginResult(args, env);
window.qnx.webplatform.getApplication().windowVisible = true;
result.ok(undefined, false);
}
};

View File

@@ -0,0 +1,168 @@
/*
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*/
// Default parameter values including image size can be changed in `config.xml`
var splashImageWidth = 170;
var splashImageHeight = 200;
var position = { x: 0, y: 0, width: splashImageWidth, height: splashImageHeight };
var localSplash; // the image to display
var localSplashImage;
var bgColor = '#464646';
var imageSrc = '/img/logo.png';
var splashScreenDelay = 3000; // in milliseconds
var showSplashScreen = true; // show splashcreen by default
var cordova = require('cordova');
var configHelper = cordova.require('cordova/confighelper');
var autoHideSplashScreen = true;
function updateImageLocation () {
position.width = Math.min(splashImageWidth, window.innerWidth);
position.height = position.width * (splashImageHeight / splashImageWidth);
localSplash.style.width = window.innerWidth + 'px';
localSplash.style.height = window.innerHeight + 'px';
localSplash.style.top = '0px';
localSplash.style.left = '0px';
localSplashImage.style.top = '50%';
localSplashImage.style.left = '50%';
localSplashImage.style.height = position.height + 'px';
localSplashImage.style.width = position.width + 'px';
localSplashImage.style.marginTop = (-position.height / 2) + 'px';
localSplashImage.style.marginLeft = (-position.width / 2) + 'px';
}
function onResize () {
updateImageLocation();
}
var SplashScreen = {
setBGColor: function (cssBGColor) {
bgColor = cssBGColor;
if (localSplash) {
localSplash.style.backgroundColor = bgColor;
}
},
show: function () {
if (!localSplash) {
window.addEventListener('resize', onResize, false);
localSplash = document.createElement('div');
localSplash.style.backgroundColor = bgColor;
localSplash.style.position = 'absolute';
localSplash.style['z-index'] = '99999';
localSplashImage = document.createElement('img');
localSplashImage.src = imageSrc;
localSplashImage.style.position = 'absolute';
updateImageLocation();
localSplash.appendChild(localSplashImage);
document.body.appendChild(localSplash);
// deviceready fires earlier than the plugin init on cold-start
if (SplashScreen.shouldHideImmediately) {
SplashScreen.shouldHideImmediately = false;
window.setTimeout(function () {
SplashScreen.hide();
}, 1000);
}
}
},
hide: function () {
if (localSplash) {
var innerLocalSplash = localSplash;
localSplash = null;
window.removeEventListener('resize', onResize, false);
innerLocalSplash.style.opacity = '0';
innerLocalSplash.style['-webkit-transition'] = 'opacity 1s ease-in-out';
innerLocalSplash.style['-moz-transition'] = 'opacity 1s ease-in-out';
innerLocalSplash.style['-ms-transition'] = 'opacity 1s ease-in-out';
innerLocalSplash.style['-o-transition'] = 'opacity 1s ease-in-out';
window.setTimeout(function () {
document.body.removeChild(innerLocalSplash);
innerLocalSplash = null;
}, 1000);
} else {
SplashScreen.shouldHideImmediately = true;
}
}
};
/**
* Reads preferences via ConfigHelper and substitutes default parameters.
*/
function readPreferencesFromCfg (cfg) {
try {
var value = cfg.getPreferenceValue('ShowSplashScreen');
if (typeof value !== 'undefined') {
showSplashScreen = value === 'true';
}
splashScreenDelay = cfg.getPreferenceValue('SplashScreenDelay') || splashScreenDelay;
splashScreenDelay = parseInt(splashScreenDelay, 10);
imageSrc = cfg.getPreferenceValue('SplashScreen') || imageSrc;
bgColor = cfg.getPreferenceValue('SplashScreenBackgroundColor') || bgColor;
splashImageWidth = cfg.getPreferenceValue('SplashScreenWidth') || splashImageWidth;
splashImageHeight = cfg.getPreferenceValue('SplashScreenHeight') || splashImageHeight;
autoHideSplashScreen = cfg.getPreferenceValue('AutoHideSplashScreen') || autoHideSplashScreen;
autoHideSplashScreen = (autoHideSplashScreen === true || autoHideSplashScreen.toLowerCase() === 'true');
} catch (e) {
var msg = '[Browser][SplashScreen] Error occurred on loading preferences from config.xml: ' + JSON.stringify(e);
console.error(msg);
}
}
/**
* Shows and hides splashscreen if it is enabled, with a delay according the current preferences.
*/
function showAndHide () {
if (showSplashScreen) {
SplashScreen.show();
window.setTimeout(function () {
SplashScreen.hide();
}, splashScreenDelay);
}
}
/**
* Tries to read config.xml and override default properties and then shows and hides splashscreen if it is enabled.
*/
(function initAndShow () {
configHelper.readConfig(function (config) {
readPreferencesFromCfg(config);
if (autoHideSplashScreen) {
showAndHide();
} else {
SplashScreen.show();
}
}, function (err) {
console.error(err);
});
})();
module.exports = SplashScreen;
require('cordova/exec/proxy').add('SplashScreen', SplashScreen);

View File

@@ -1,33 +0,0 @@
/*
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
*/
#import <Foundation/Foundation.h>
#import <Cordova/CDVPlugin.h>
@interface CDVSplashScreen : CDVPlugin {
UIActivityIndicatorView* _activityView;
UIImageView* _imageView;
NSString* _curImageName;
BOOL _visible;
}
- (void)show:(CDVInvokedUrlCommand*)command;
- (void)hide:(CDVInvokedUrlCommand*)command;
@end

View File

@@ -1,252 +0,0 @@
/*
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
*/
#import "CDVSplashScreen.h"
#import <Cordova/CDVViewController.h>
#define kSplashScreenDurationDefault 0.25f
@implementation CDVSplashScreen
- (void)pluginInitialize
{
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(pageDidLoad) name:CDVPageDidLoadNotification object:self.webView];
[self setVisible:YES];
}
- (void)show:(CDVInvokedUrlCommand*)command
{
[self setVisible:YES];
}
- (void)hide:(CDVInvokedUrlCommand*)command
{
[self setVisible:NO];
}
- (void)pageDidLoad
{
id autoHideSplashScreenValue = [self.commandDelegate.settings objectForKey:[@"AutoHideSplashScreen" lowercaseString]];
// if value is missing, default to yes
if ((autoHideSplashScreenValue == nil) || [autoHideSplashScreenValue boolValue]) {
[self setVisible:NO];
}
}
- (void)observeValueForKeyPath:(NSString*)keyPath ofObject:(id)object change:(NSDictionary*)change context:(void*)context
{
[self updateImage];
}
- (void)createViews
{
/*
* The Activity View is the top spinning throbber in the status/battery bar. We init it with the default Grey Style.
*
* whiteLarge = UIActivityIndicatorViewStyleWhiteLarge
* white = UIActivityIndicatorViewStyleWhite
* gray = UIActivityIndicatorViewStyleGray
*
*/
NSString* topActivityIndicator = [self.commandDelegate.settings objectForKey:[@"TopActivityIndicator" lowercaseString]];
UIActivityIndicatorViewStyle topActivityIndicatorStyle = UIActivityIndicatorViewStyleGray;
if ([topActivityIndicator isEqualToString:@"whiteLarge"]) {
topActivityIndicatorStyle = UIActivityIndicatorViewStyleWhiteLarge;
} else if ([topActivityIndicator isEqualToString:@"white"]) {
topActivityIndicatorStyle = UIActivityIndicatorViewStyleWhite;
} else if ([topActivityIndicator isEqualToString:@"gray"]) {
topActivityIndicatorStyle = UIActivityIndicatorViewStyleGray;
}
UIView* parentView = self.viewController.view;
parentView.userInteractionEnabled = NO; // disable user interaction while splashscreen is shown
_activityView = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:topActivityIndicatorStyle];
_activityView.center = CGPointMake(parentView.bounds.size.width / 2, parentView.bounds.size.height / 2);
_activityView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleLeftMargin
| UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleRightMargin;
[_activityView startAnimating];
// Set the frame & image later.
_imageView = [[UIImageView alloc] init];
[parentView addSubview:_imageView];
id showSplashScreenSpinnerValue = [self.commandDelegate.settings objectForKey:[@"ShowSplashScreenSpinner" lowercaseString]];
// backwards compatibility - if key is missing, default to true
if ((showSplashScreenSpinnerValue == nil) || [showSplashScreenSpinnerValue boolValue]) {
[parentView addSubview:_activityView];
}
// Frame is required when launching in portrait mode.
// Bounds for landscape since it captures the rotation.
[parentView addObserver:self forKeyPath:@"frame" options:0 context:nil];
[parentView addObserver:self forKeyPath:@"bounds" options:0 context:nil];
[self updateImage];
}
- (void)destroyViews
{
[_imageView removeFromSuperview];
[_activityView removeFromSuperview];
_imageView = nil;
_activityView = nil;
_curImageName = nil;
self.viewController.view.userInteractionEnabled = YES; // re-enable user interaction upon completion
[self.viewController.view removeObserver:self forKeyPath:@"frame"];
[self.viewController.view removeObserver:self forKeyPath:@"bounds"];
}
// Sets the view's frame and image.
- (void)updateImage
{
UIInterfaceOrientation orientation = self.viewController.interfaceOrientation;
// Use UILaunchImageFile if specified in plist. Otherwise, use Default.
NSString* imageName = [[NSBundle mainBundle] objectForInfoDictionaryKey:@"UILaunchImageFile"];
// Checks to see if the developer has locked the orientation to use only one of Portrait or Landscape
CDVViewController* vc = (CDVViewController*)self.viewController;
BOOL supportsLandscape = [vc supportsOrientation:UIInterfaceOrientationLandscapeLeft] || [vc supportsOrientation:UIInterfaceOrientationLandscapeRight];
BOOL supportsPortrait = [vc supportsOrientation:UIInterfaceOrientationPortrait] || [vc supportsOrientation:UIInterfaceOrientationPortraitUpsideDown];
BOOL isOrientationLocked = !(supportsPortrait && supportsLandscape);
if (imageName) {
imageName = [imageName stringByDeletingPathExtension];
} else {
imageName = @"Default";
}
if (CDV_IsIPhone5()) {
imageName = [imageName stringByAppendingString:@"-568h"];
} else if (CDV_IsIPad() && isOrientationLocked) {
switch (orientation) {
case UIInterfaceOrientationLandscapeLeft:
case UIInterfaceOrientationLandscapeRight:
imageName = [imageName stringByAppendingString:@"-Landscape"];
break;
case UIInterfaceOrientationPortrait:
case UIInterfaceOrientationPortraitUpsideDown:
default:
imageName = [imageName stringByAppendingString:@"-Portrait"];
break;
}
}
if (![imageName isEqualToString:_curImageName]) {
UIImage* img = [UIImage imageNamed:imageName];
_imageView.image = img;
_curImageName = imageName;
}
// Check that splash screen's image exists before updating bounds
if (_imageView.image) {
[self updateBounds];
} else {
NSLog(@"WARNING: The splashscreen image named %@ was not found", imageName);
}
}
- (void)updateBounds
{
UIImage* img = _imageView.image;
CGRect imgBounds = (img) ? CGRectMake(0, 0, img.size.width, img.size.height) : CGRectZero;
CGSize screenSize = [self.viewController.view convertRect:[UIScreen mainScreen].bounds fromView:nil].size;
UIInterfaceOrientation orientation = self.viewController.interfaceOrientation;
CGAffineTransform imgTransform = CGAffineTransformIdentity;
/* If and only if an iPhone application is landscape-only as per
* UISupportedInterfaceOrientations, the view controller's orientation is
* landscape. In this case the image must be rotated in order to appear
* correctly.
*/
if (UIInterfaceOrientationIsLandscape(orientation) && !CDV_IsIPad()) {
imgTransform = CGAffineTransformMakeRotation(M_PI / 2);
imgBounds.size = CGSizeMake(imgBounds.size.height, imgBounds.size.width);
}
// There's a special case when the image is the size of the screen.
if (CGSizeEqualToSize(screenSize, imgBounds.size)) {
CGRect statusFrame = [self.viewController.view convertRect:[UIApplication sharedApplication].statusBarFrame fromView:nil];
if (!(IsAtLeastiOSVersion(@"7.0"))) {
imgBounds.origin.y -= statusFrame.size.height;
}
} else if (imgBounds.size.width > 0) {
CGRect viewBounds = self.viewController.view.bounds;
CGFloat imgAspect = imgBounds.size.width / imgBounds.size.height;
CGFloat viewAspect = viewBounds.size.width / viewBounds.size.height;
// This matches the behaviour of the native splash screen.
CGFloat ratio;
if (viewAspect > imgAspect) {
ratio = viewBounds.size.width / imgBounds.size.width;
} else {
ratio = viewBounds.size.height / imgBounds.size.height;
}
imgBounds.size.height *= ratio;
imgBounds.size.width *= ratio;
}
_imageView.transform = imgTransform;
_imageView.frame = imgBounds;
}
- (void)setVisible:(BOOL)visible
{
if (visible == _visible) {
return;
}
_visible = visible;
id fadeSplashScreenValue = [self.commandDelegate.settings objectForKey:[@"FadeSplashScreen" lowercaseString]];
id fadeSplashScreenDuration = [self.commandDelegate.settings objectForKey:[@"FadeSplashScreenDuration" lowercaseString]];
float fadeDuration = fadeSplashScreenDuration == nil ? kSplashScreenDurationDefault : [fadeSplashScreenDuration floatValue];
if ((fadeSplashScreenValue == nil) || ![fadeSplashScreenValue boolValue]) {
fadeDuration = 0;
}
// Never animate the showing of the splash screen.
if (visible) {
if (_imageView == nil) {
[self createViews];
}
} else if (fadeDuration == 0) {
[self destroyViews];
} else {
[UIView transitionWithView:self.viewController.view
duration:fadeDuration
options:UIViewAnimationOptionTransitionNone
animations:^(void) {
[_imageView setAlpha:0];
[_activityView setAlpha:0];
}
completion:^(BOOL finished) {
[self destroyViews];
}];
}
}
@end

View File

@@ -1,42 +0,0 @@
/*
*
* Copyright 2013 Canonical Ltd.
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*/
#include <QQuickItem>
#include "splashscreen.h"
#include <cordova.h>
#define SPLASHSCREEN_STATE_NAME "splashscreen"
Splashscreen::Splashscreen(Cordova *cordova): CPlugin(cordova) {
}
void Splashscreen::show(int, int) {
m_cordova->rootObject()->setProperty("splashscreenPath", m_cordova->getSplashscreenPath());
m_cordova->pushViewState(SPLASHSCREEN_STATE_NAME);
}
void Splashscreen::hide(int, int) {
m_cordova->popViewState(SPLASHSCREEN_STATE_NAME);
}

View File

@@ -1,52 +0,0 @@
/*
*
* Copyright 2013 Canonical Ltd.
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*/
#ifndef SPLASHSCREEN_H
#define SPLASHSCREEN_H
#include <QtCore>
#include <cplugin.h>
class Splashscreen: public CPlugin {
Q_OBJECT
public:
explicit Splashscreen(Cordova *cordova);
virtual const QString fullName() override {
return Splashscreen::fullID();
}
virtual const QString shortName() override {
return "SplashScreen";
}
static const QString fullID() {
return "SplashScreen";
}
public slots:
void show(int, int);
void hide(int, int);
};
#endif // SPLASHSCREEN_H

View File

@@ -19,25 +19,17 @@
*
*/
( function() {
var splash = require('cordova/splashscreen');
win = null;
module.exports = {
show: function() {
if ( win === null ) {
win = window.open('splashscreen.html');
}
var SplashScreen = {
show: function () {
splash.show();
},
hide: function() {
if ( win !== null ) {
win.close();
win = null;
}
hide: function () {
splash.hide();
}
};
require("cordova/tizen/commandProxy").add("SplashScreen", module.exports);
module.exports = SplashScreen;
})();
require('cordova/exec/proxy').add('SplashScreen', SplashScreen);

View File

@@ -1,167 +0,0 @@
/*
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Info;
using System.Windows.Controls.Primitives;
using System.Diagnostics;
using System.Windows.Media.Imaging;
using System.Windows.Resources;
using System.IO;
using System.Xml.Linq;
using System.Linq;
using System.Windows.Threading;
namespace WPCordovaClassLib.Cordova.Commands
{
/// <summary>
/// Listens for changes to the state of the battery on the device.
/// Currently only the "isPlugged" parameter available via native APIs.
/// </summary>
public class SplashScreen : BaseCommand
{
private Popup popup;
private bool autohide = true;
private static bool WasShown = false;
public SplashScreen()
{
Image SplashScreen = new Image();
BitmapImage splash_image = new BitmapImage();
splash_image.SetSource(Application.GetResourceStream(new Uri(@"SplashScreenImage.jpg", UriKind.Relative)).Stream);
SplashScreen.Source = splash_image;
// Instansiate the popup and set the Child property of Popup to SplashScreen
popup = new Popup() {IsOpen = false, Child = SplashScreen };
// Orient the popup accordingly
popup.HorizontalAlignment = HorizontalAlignment.Stretch;
popup.VerticalAlignment = VerticalAlignment.Center;
LoadConfigValues();
}
public override void OnInit()
{
// we only want to autoload the first time a page is loaded.
if (!WasShown)
{
WasShown = true;
show();
}
}
void LoadConfigValues()
{
StreamResourceInfo streamInfo = Application.GetResourceStream(new Uri("config.xml", UriKind.Relative));
if (streamInfo != null)
{
StreamReader sr = new StreamReader(streamInfo.Stream);
//This will Read Keys Collection for the xml file
XDocument document = XDocument.Parse(sr.ReadToEnd());
var preferences = from results in document.Descendants()
where (string)results.Attribute("name") == "AutoHideSplashScreen"
select (string)results.Attribute("value") == "true";
if (preferences.Count() > 0 && preferences.First() == false)
{
autohide = false;
}
}
}
public void show(string options = null)
{
if (popup.IsOpen)
{
return;
}
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
popup.Child.Opacity = 0;
Storyboard story = new Storyboard();
DoubleAnimation animation;
animation = new DoubleAnimation();
animation.From = 0.0;
animation.To = 1.0;
animation.Duration = new Duration(TimeSpan.FromSeconds(0.2));
Storyboard.SetTarget(animation, popup.Child);
Storyboard.SetTargetProperty(animation, new PropertyPath("Opacity"));
story.Children.Add(animation);
Debug.WriteLine("Fading the splash screen in");
story.Begin();
popup.IsOpen = true;
if (autohide)
{
DispatcherTimer timer = new DispatcherTimer();
timer.Tick += (object sender, EventArgs e) =>
{
hide();
};
timer.Interval = TimeSpan.FromSeconds(1.2);
timer.Start();
}
});
}
public void hide(string options = null)
{
if (!popup.IsOpen)
{
return;
}
Deployment.Current.Dispatcher.BeginInvoke(() =>
{
popup.Child.Opacity = 1.0;
Storyboard story = new Storyboard();
DoubleAnimation animation;
animation = new DoubleAnimation();
animation.From = 1.0;
animation.To = 0.0;
animation.Duration = new Duration(TimeSpan.FromSeconds(0.4));
Storyboard.SetTarget(animation, popup.Child);
Storyboard.SetTargetProperty(animation, new PropertyPath("Opacity"));
story.Children.Add(animation);
story.Completed += (object sender, EventArgs e) =>
{
popup.IsOpen = false;
};
story.Begin();
});
}
}
}

14
tests/package.json Normal file
View File

@@ -0,0 +1,14 @@
{
"name": "cordova-plugin-splashscreen-tests",
"version": "6.0.1-dev",
"description": "",
"cordova": {
"id": "cordova-plugin-splashscreen-tests",
"platforms": []
},
"keywords": [
"ecosystem:cordova"
],
"author": "",
"license": "Apache 2.0"
}

29
tests/plugin.xml Normal file
View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<plugin xmlns="http://apache.org/cordova/ns/plugins/1.0"
id="cordova-plugin-splashscreen-tests"
version="6.0.1-dev">
<name>Cordova Splashscreen Plugin Tests</name>
<license>Apache 2.0</license>
<js-module src="tests.js" name="tests">
</js-module>
</plugin>

61
tests/tests.js Normal file
View File

@@ -0,0 +1,61 @@
/*
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*/
exports.defineAutoTests = function () {
describe('Splashscreen (cordova)', function () {
it('splashscreen.spec.1 should exist', function () {
expect(navigator.splashscreen).toBeDefined();
});
it('splashscreen.spec.2 show method should exist', function () {
expect(navigator.splashscreen.show).toBeDefined();
expect(typeof navigator.splashscreen.show).toBe('function');
});
it('splashscreen.spec.3 hide method should exist', function () {
expect(navigator.splashscreen.hide).toBeDefined();
expect(typeof navigator.splashscreen.hide).toBe('function');
});
});
};
exports.defineManualTests = function (contentEl, createActionButton) {
function showFor (duration) {
navigator.splashscreen.show();
window.setTimeout(function () {
navigator.splashscreen.hide();
}, 1000 * duration);
}
contentEl.innerHTML = '<h1>Splashscreen Tests</h1>' +
'<div id="show1"></div>' +
'Expected result: Will show the Cordova splashscreen for 1 second' +
'</p> <div id="show5"></div>' +
'Expected result: Will show the Cordova splashscreen for 5 seconds';
createActionButton('Show for 1 second', function () {
showFor(1);
}, 'show1');
createActionButton('Show for 5 seconds', function () {
showFor(5);
}, 'show5');
};

17
types/index.d.ts vendored Normal file
View File

@@ -0,0 +1,17 @@
// Type definitions for Apache Cordova Splashscreen plugin
// Project: https://github.com/apache/cordova-plugin-splashscreen
// Definitions by: Microsoft Open Technologies Inc <http://msopentech.com>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
//
// Copyright (c) Microsoft Open Technologies Inc
// Licensed under the MIT license.
interface Navigator {
/** This plugin displays and hides a splash screen during application launch. */
splashscreen: {
/** Dismiss the splash screen. */
hide(): void;
/** Displays the splash screen. */
show(): void;
}
}

View File

@@ -22,11 +22,11 @@
var exec = require('cordova/exec');
var splashscreen = {
show:function() {
exec(null, null, "SplashScreen", "show", []);
show: function () {
exec(null, null, 'SplashScreen', 'show', []);
},
hide:function() {
exec(null, null, "SplashScreen", "hide", []);
hide: function () {
exec(null, null, 'SplashScreen', 'hide', []);
}
};

View File

@@ -1,106 +0,0 @@
/*
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*/
/*jslint sloppy:true */
/*global Windows:true, require, module, window, document, WinJS */
var cordova = require('cordova'),
channel = require('cordova/channel');
/* This is the actual implementation part that returns the result on Windows 8
*/
var position = { x: 0, y: 0, width: 0, height: 0 }; // defined by evt.detail.splashScreen.imageLocation
var splash = null; //
var localSplash; // the image to display
var localSplashImage;
var bgColor = "#464646";
function updateImageLocation() {
localSplash.style.width = window.innerWidth + "px";
localSplash.style.height = window.innerHeight + "px";
localSplash.style.top = "0px";
localSplash.style.left = "0px";
localSplashImage.style.top = position.y + "px";
localSplashImage.style.left = position.x + "px";
localSplashImage.style.height = position.height + "px";
localSplashImage.style.width = position.width + "px";
}
function onResize(evt) {
if (splash) {
position = splash.imageLocation;
updateImageLocation();
}
}
var SplashScreen = {
setBGColor: function (cssBGColor) {
bgColor = cssBGColor;
if (localSplash) {
localSplash.style.backgroundColor = bgColor;
}
},
show: function () {
window.addEventListener("resize", onResize, false);
localSplash = document.createElement("div");
localSplash.style.backgroundColor = bgColor;
localSplash.style.position = "absolute";
localSplashImage = document.createElement("img");
localSplashImage.src = "ms-appx:///images/splashscreen.png";
localSplashImage.style.position = "absolute";
updateImageLocation();
localSplash.appendChild(localSplashImage);
document.body.appendChild(localSplash);
},
hide: function () {
window.removeEventListener("resize", onResize, false);
document.body.removeChild(localSplash);
localSplash = null;
}
};
module.exports = SplashScreen;
function activated(evt) {
if (evt.detail.kind === Windows.ApplicationModel.Activation.ActivationKind.launch) {
splash = evt.detail.splashScreen;
position = evt.detail.splashScreen.imageLocation;
}
}
channel.onCordovaReady.subscribe(function (evt) {
document.addEventListener("DOMContentLoaded", function (evt) {
WinJS.Application.addEventListener("activated", activated, false);
}, false);
});
require("cordova/exec/proxy").add("SplashScreen", SplashScreen);