Commit Graph

2262 Commits

Author SHA1 Message Date
jcesarmobile 245021782b fix: handle permissions for getUserMedia (#1895)
* fix: handle permissions for getUserMedia

* remove unused variable

* address comments
2026-04-24 18:53:30 +02:00
Manuel Beck b66f0f33b8 Call new method CordovaPlugin.onRequestPermissionsResult (#1855)
- Fixes https://github.com/apache/cordova-android/issues/1388
- `CordovaInterfaceImpl` called the deprecated method `CordovaPlugin.onRequestPermissionResult` but not the new one. Now the one will also be called.
- Renamed `CordovaInterfaceImpl.onRequestPermissionResult` to `CordovaInterfaceImpl.onRequestPermissionsResult` to reflect the new method name
2026-04-20 18:06:08 +02:00
Manuel Beck 8c83976486 Deprecate PermissionHelper (#1857)
- The `PermissionHelper` was for cordova-android versions pre 5.0.0. Since cordova-anroid 5.0.0 the relevant permission methods can be called directly on `CordovaInterface`.
2026-04-20 18:04:26 +02:00
Manuel Beck 9c3d82680e Remove unused private Method PermissionHelper.deliverPermissionResult (#1858)
- The method deliverPermissionResult is private and nowhere used. Because it's private, it cannot be called from outside and cannot be overwritten and is safe to remove.
2026-04-20 18:03:30 +02:00
seamlink-aalves 190076ba18 chore: simplify edge-to-edge preference logic in CordovaActivity and SystemBarPlugin (#1902)
- Remove the limitation for Android version <15 when preference AndroidEdgeToEdge is true.
- The motivation and context was described here: apache/cordova-discuss#114
- When having cordova android in Edge To Edge the app does not extend to the full height of the device in version bellow Android 15. This change allows the app to behave the same way it was possible to do with the statusbar plugin preference StatusBarOverlaysWebView given that this stopped having any effect in cordova-android 15.
2026-04-20 18:00:47 +02:00
Manuel Beck 0bfbc20b84 fix: overwritten backbutton not firing on first time by hardware button and never on back gesture (#1910)
- When pressing the back button after the app starts nothing happens. When navigating to another page, the back button js event starts to fire.
- On Android versions, which support the back gesture, nothing happens
- This was due to the empty `OnBackPressedCallback.handleOnBackPressed` method, which has to forward its call to `cordova.getActivity().getOnBackPressedDispatcher().onBackPressed()`, but has to disable during this call the `backCallback`.
- Generated-By: GPT-5.4, GitHub Copilot Chat

- warning about back button override on the right 

* chore: resolve methods `registerBackPressedCallback` and `unregisterBackPressedCallback``

- The code moved to inline code
2026-04-20 17:48:48 +02:00
エリス 1f70d396da chore: more license header updates (#1909)
* chore: update license headers again

- CSS, Gradle, Java, JS, TS: Formatted doc block style to use "/*" instead of "/**"
- HTML: Move license header below DOCTYPE
- Add missing license header
- Cleanup rat ignore

* chore: format cordova-js-src license headers
2026-03-28 12:42:26 +09:00
エリス 9ae489bd37 fix(gradle-9): unable to resolve class XmlParser for Groovy 4.x (#1896) 2026-03-19 09:58:16 +09:00
Manuel Beck 9064bc0792 fix(android): use AndroidX OnBackPressedCallback instead of OnBackInvokedCallback (#1903)
- `CoreAndroid.java` referenced `OnBackInvokedCallback` directly (including lambda generation), which can trigger class resolution on runtimes older than API 33, where the class is not available. This was introduced in PR https://github.com/apache/cordova-android/pull/1831
- Replaced `OnBackInvokedCallback` with AndroidX `OnBackPressedCallback`
- Fixes error message: `java.lang.Class<org.apache.cordova.CoreAndroid$$ExternalSyntheticLambda0>: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/window/OnBackInvokedCallback;` on older Android versions

---------

Generated-By: GPT-5.3-Codex, GitHub Copilot Chat
Co-authored-by: Norman Breau <norman@breautek.com>
2026-03-13 19:43:15 +01:00
エリス d426e0ffe1 chore: license, license headers & CI & draft workflow improvements (#1891) 2026-02-24 15:37:57 +09:00
エリス faa00f2a62 release(15.0.0): updated release notes & version (#1885) 2026-02-24 12:09:38 +09:00
Norman Breau 7a353fe81d fix: Potential NPE when handling generic exceptions (#1878) 2026-01-08 16:14:28 -04:00
Manuel Beck 6b76757c80 CallbackContext: Add success method for boolean (#1864)
- Add helper method for success callbacks that returns `Status.OK` with a boolean
2025-12-17 10:31:26 +01:00
エリス 655aa0a5fb fix: re-expose and support pollOnce (#1854) 2025-10-27 12:40:49 +09:00
João Gonçalves 360be21ea5 fix: edge to edge/fullscreen margins (#1847)
Ensures that when in edge to edge or fullscreen modes the values for
margin left and right are 0

Co-authored-by: Kepa Totorica <kepa.baum.totorica@outsystems.com>
2025-10-09 11:47:23 +09:00
Manuel Beck eb5fe4fbda fix: Deprecation warning in PluginManager for using Class.newInstance (#1823)
- Calling Class.newInstance is deprecated. Instead Class.getDeclaredConstructor().newInstance() should be called
2025-09-27 02:23:24 +09:00
Norman Breau 46af3114b8 fix: Back button override on API 36+ (#1831) 2025-09-27 02:22:22 +09:00
エリス 76aa938002 feat!: support previous non-E2E (#1817)
* feat: support previous non-e2e (add FrameLayout wrapper)
* feat: implement internal SystemBar plugin
* feat: implement StatusBar plugin JS API (SystemBarPlugin)
* feat!: force custom statusbarView for all SDKs
* chore: various cleanup, refactors, fixes, and docs from recent changes
* feat: use getComputedStyle for setBackgroundColor
* chore: suppress deprecation warnings for method using setNavigationBarColor
* chore: return null when rootView is null
* fix: setOnApplyWindowInsetsListener to return insets
* fix: setting appearance when e2e is enabled
* fix: set statusBarColor to transparent, use new statusBar UI
2025-09-27 02:21:17 +09:00
エリス e4457f7fdb chore!: update template defaults (#1837)
* chore: update default package id
* chore: sync cordova-app-hello-world defaults & modified for Android differences
2025-08-19 13:55:18 +09:00
エリス c2cf589d84 feat: allow disabling splash screen for embedded Cordova (#1824) 2025-07-16 14:34:03 +09:00
Manuel Beck df36c7a2c4 fix: gradle deprecation warnings about property assignment (#1821)
When building a plain Android Cordova app without plugins, there will be Gradle depraction warnings: `Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.`. Compiling it with `--warning-mode all` shows, that some properties are assigned without an `=`, which will not be supported any longer with Gradle 10.0.
2025-07-09 12:18:02 +09:00
エリス cab5c5b7ec fix: apply repositories.gradle for cordova.gradle dependencies (#1816) 2025-07-05 13:41:58 +09:00
エリス 72e7148884 feat!: bump kotlin@2.1.21 (#1814) 2025-06-24 11:58:49 +09:00
エリス 36bee66493 feat: androidx.appcompat:appcompat@1.7.1 (#1813) 2025-06-24 11:43:45 +09:00
エリス 4dcfc361d2 feat: androidx.webkit:webkit@1.14.0 (#1812) 2025-06-24 11:22:47 +09:00
エリス c25ed27828 feat!: bump Gradle@8.14.2 & AGP@8.10.1 (#1811) 2025-06-24 10:57:25 +09:00
エリス d8f6f37737 feat!: bump sdk & build tools to 36 (#1810) 2025-06-24 10:42:10 +09:00
エリス 00744c4f71 chore: bump 15.0.0-dev (#1803) 2025-06-16 12:34:19 +09:00
Erisu 872d98876e chore: bump version 14.0.2-dev 2025-04-24 13:05:52 +09:00
Erisu 855fab238c release(android-v14.0.1): updated version and RELEASENOTES.md 2025-04-24 12:50:39 +09:00
Erisu 1d82a3b52f chore: bump version 14.0.1-dev 2025-03-23 18:46:43 +09:00
Erisu 688d2cf5ad release(android-v14.0.0): updated version and RELEASENOTES.md 2025-03-23 18:37:46 +09:00
Erisu 839f9b878b Revert "release(android-v14.0.0): updated version and RELEASENOTES.md"
This reverts commit 2258d33a72.
2025-03-20 12:52:07 +09:00
Erisu d4eca414e3 Revert "chore: bump version 14.0.1-dev"
This reverts commit 5da9bd6d9d.
2025-03-20 12:51:45 +09:00
Erisu 5da9bd6d9d chore: bump version 14.0.1-dev 2025-03-19 11:26:04 +09:00
Erisu 2258d33a72 release(android-v14.0.0): updated version and RELEASENOTES.md 2025-03-19 10:56:30 +09:00
エリス aad36fe565 feat: bump gradle to 8.13 (#1785) 2025-03-18 10:54:49 +09:00
エリス d0b59863ac feat!: bump java default targets to 11 (#1784)
* feat!: bump java source, target & kotlin jvm target to default 11
* chore!: remove java <= 8 logic
* refactor: setting of kotlin's jvmTarget
2025-03-14 11:55:43 +09:00
エリス 7544fdf1ed chore: bump CordovaWebView version to 14.0.0-dev (#1782) 2025-03-04 00:05:00 +09:00
エリス eb0f002112 style: update & resolve doc block warnings (#1774)
* style: resolve throw symbols (except InvalidArgumentException)
* style: resolve unknown symbol & reduce indention for PluginEntry
* fix: define IllegalArgumentException not InvalidArgumentException
2025-01-30 18:17:22 +09:00
エリス b623311efa feat!: deprecate CordovaPlugin's method initialize (#1771) 2025-01-28 12:28:32 +09:00
エリス 34220ae0e3 feat: androidx.core:core-splashscreen@1.0.1 (#1768) 2025-01-28 11:57:42 +09:00
エリス 1fe44d71c5 feat: com.google.gms:google-services@4.4.2 (#1766) 2025-01-28 11:14:07 +09:00
エリス 58c2e3ae15 feat: androidx.webkit:webkit@1.12.1 (#1765) 2025-01-28 10:54:19 +09:00
エリス ea045dee63 feat: androidx.appcompat:appcompat@1.7.0 (#1764) 2025-01-28 10:33:25 +09:00
エリス cee7b0b8ac feat!: SDK 35 Support (#1763)
* feat(gradle)!: bump to 8.9 w/ AGP@8.7.3
* feat!: bump android sdk@35 & minimum-build-tool@35.0.0
2025-01-28 10:32:49 +09:00
Erisu 172e947d18 chore: bump version 13.0.1-dev 2024-05-15 19:45:51 +09:00
Erisu 2143045d4e release(android-v13.0.0): updated version and RELEASENOTES.md 2024-05-15 19:35:44 +09:00
エリス c2f315c0ff feat: bump kotlin 1.9.24 & drop kotlin-android-extensions when kotlin >= 1.8.0 (#1543)
* feat: bump kotlin 1.9.24 & don't apply kotlin-android-extensions when kotlin >= 1.8.0
2024-05-13 23:32:49 +09:00
Norman Breau 89a0a72da5 feat!: API 34 Support (#1678)
* feat!: Upgrade to Gradle and AGP 8

* java 17

* feat!: API 34 Support

API 34: Upgrade AGP from 8.2.0-rc01 to 8.2.0-rc02

API 34: Upgrade AGP from 8.2.0-rc02 to 8.2.0-rc03

API 34: Upgrade AGP from 8.2.0-rc03 to 8.2.0

feat: add AndroidKotlinJVMTarget preference to set the kotlin JVM target
This is in addition to the java source / target compatibility preferences.
AndroidKotlinJVMTarget is only affective if Kotlin is enabled.

chore: Upgrade Gradle from 8.4 to 8.5

AGP 8.2.0 -> 8.2.1

Gradle 8.5 -> 8.7

fix: Add --validate-url to gradle wrapper commands

AGP 8.4.0

* fix(test): ProjectBuilder using Gradle 8.3, no longer supported version

* API 34: Change Kotlin JVM Target default.

The new default value is null. When null, it will by default
to the Java Target compatibility. Updating AndroidJavaTargetCompatibility
will also influence the Kotlin JVM target, unless if AndroidKotlinJVMTarget
is also explicitly defined.

* removed leftover debug prints

* API 34: Gradle Wrapper

* API 34: ratignore generated gradle wrapper files

* fix gradle wrapper jar via git attributes

* fix(test): normalise gradle paths

* fix(windows): Gradle paths

* fix(windows): Keep CRLF endings for bat files

* chore: Updated license for Gradle Wrapper 8.7 pointer

* API 34 Support Gradle Tools project

* API 34: omit --validate-url on installing the wrapper

* revert: LICENSE notice on bundling the gradle wrapper jar

* Revert: AGP 8.4 -> 8.3

* test(ci): Added NodeJS 22 to the test matrix

---------

Co-authored-by: jcesarmobile <jcesarmobile@gmail.com>
2024-05-13 10:28:57 -03:00