Commit graph

40 commits

Author SHA1 Message Date
lumiscosity
eda83564f3
Losslessly optimize Android resources (#38332)
Losslessly optimizes the Android resources. These are the only non-test
PNGs remaining in the project, to my knowledge.

Testing: Unnecessary, since this only optimizes assets.

Signed-off-by: maple! <averyrudelphe@gmail.com>
2025-07-29 12:15:50 +00:00
Clocks
cc6f7c5bc4
Conversion to Gradle KTS (#33772)
* Convert settings.gradle to Kotlin Script

Stage 1 of #33742

Signed-off-by: clocks <doomsdayrs@gmail.com>

* servoview-local: Convert build.gradle to Kotlin Script

Stage 1 of #33742

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Convert build.gradle to Kotlin Script

This was a trickier one, as I wanted to maintain compatibility with the rest of the files while facilitating this migration.

Closures are annoying, another annoyance of loosely typed languages in an OOP project.

Migration of child build scripts will require the reverse code and or migration of this scripts functions to kotlin lambdas / functions (which are just jvm functions).

Code based off of the following guide.
https://docs.gradle.org/current/userguide/kotlin_dsl.html#groovy_closures_from_kotlin

Stage 1 of #33742

Signed-off-by: clocks <doomsdayrs@gmail.com>

* servoapp: Convert build.gradle to Kotlin Script

Migrated deprecated API usages.
There are two more, but ignored for now.
("splits.density", "capitalize")

Stage 1 of #33742

Signed-off-by: clocks <doomsdayrs@gmail.com>

* servoview: Convert build.gradle to Kotlin Script

Migrated deprecated API usages.
There are two more, but ignored for now.
("splits.density", "capitalize")

Stage 1 of #33742

Signed-off-by: clocks <doomsdayrs@gmail.com>

* servoview: Replace ResourceGroovyMethods with Kotlin File.walk

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Replace Groovy Closures with Kotlin Lambda types

Stage 1 of #33742

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Move Utility fields to buildSrc

Using extra fields is quite annoying and makes it hard to maintain
 API stability.

"buildSrc" is designed for this task, and thus is being used
 for said task.

This means that when editing build.gradle files in an Android Studio,
 there is a direct reference to the source of a function.
 (Easier time referring to documentation, source of function, etc).

More information here:
https://docs.gradle.org/current/userguide/sharing_build_logic_between_subprojects.html

Stage 1 of #33742

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Sync target SDK to 33

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Make Notification actions immutable.

Otherwise android lint will be upset.

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Move dependencies from servoview to servoapp

ServoView does not use them.

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Add POST_NOTIFICATIONS to manifest

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Add host to intent-filter

Use "*" for any host, lets hope this works.

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Solve ndkBuild tasks not being linked

The problem stems from something something groovy wishy washy unclear
 execution order something Kotlin explicit execution order.

Merge tasks exist after the project is evaluated.
 The problem is that simply running afterEvaluate causes an
 ConcurrentModificationException. This is because of creating a new
 task while looping over existing tasks. To remedy this we simply
 filter the tasks first, than create and link the new task.

Signed-off-by: clocks <doomsdayrs@gmail.com>

* Add documentation to why some functions are extensions to Project

Signed-off-by: clocks <doomsdayrs@gmail.com>

* android: drop the host directives from AndroidManifest.xml

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

---------

Signed-off-by: clocks <doomsdayrs@gmail.com>
Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Co-authored-by: Mukilan Thiyagarajan <mukilan@igalia.com>
2024-11-01 08:04:28 +00:00
Daniel Adams
a976db3ec0
Update layout of servoshell android app (#33294)
* Update layout of servoshell android app

Signed-off-by: Daniel Adams <msub2official@gmail.com>

* Remove gap after loop/idle text

Signed-off-by: Daniel Adams <msub2official@gmail.com>

---------

Signed-off-by: Daniel Adams <msub2official@gmail.com>
2024-09-04 11:30:52 +00:00
Martin Robinson
30dad2565f
android: Rename the Android app to reflect servo.org ownership and servoshell (#32554)
Signed-off-by: Martin Robinson <mrobinson@igalia.com>
2024-06-24 15:39:57 +00:00
Gae24
e6ea4a9c29
Android: fix url resolution (#32422)
* fix localhost

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>

* android: parse search bar field in rust

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>

* Update comment to reflect new function behavior

---------

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2024-06-10 10:03:07 +00:00
Gae24
fe6e1cfb29
Android: load url from Intent, plus fixed some warnings (#32160)
* update gitignore folder with android build files

* address some warnings

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>

* fix servo not loading url from Intent

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>

* format

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>

* InitOptions, added url field to avoid override homepage url

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>

* actually there is a gitignore file in the android folder

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>

* Restore buildToolsVersion property

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>

---------

Signed-off-by: Gae24 <96017547+Gae24@users.noreply.github.com>
2024-04-29 13:14:10 +00:00
Mukilan Thiyagarajan
d7de206dbd
Preliminary Android build support (#31086)
* Android build

* Fixes
* More fixes
  - Still failing in the linking step
* More work on getting linking working

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* android: use mozjs with ndk r25c. loads servo.org

more android build fixes.

* fix ./mach run for android and make it follow logs

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* add experimental logic for compositor pause/resume

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* pass DPI from android to simpleservo

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* ci: add android workflow

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* switch to ANDROID_SDK_ROOT and ANDROID_NDK_ROOT vars

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* upgrade gradle to 4.10.1

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* upgrade to gradle 5.1.1

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* upgrade to gradle 8 and agp 8

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* make compositing work again with external present

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* android: improve mach support for non-NixOS and CI

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* fix sampler compilation bug introduced in #30490

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* ci: add android build to main workflow

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* gradle: set MinSdk = targetSdk = 30

NDK requires we compile against the minSdk API level
which is 30 in our case.

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* add instructions for android in README.md

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* apk: move servosurface to servoview

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* apk: uncomment the mediasession callbacks on MainActivity

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* apk: fix crash on MainAtivity.onDestroy

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* apk: drop VR, arm 5 and unused code

This commit drops:
* support for google, oculusvr
* support for arm5 architecture

and also removes
* fakeld scripts
* unused java code

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* cleanup shell.nix

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* android: add FIXMEs for gstreamer code

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* apk: remove commented code and debug logs

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* cleanup ServoView.java

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* mach: comment call to download gstreamer deps for android

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* disable bluetooth for jniapi as blurdroid is broken

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* fixup! README.md

* fixup! remove change in Cargo.toml

* fixup! move shell variables together

* fixup! cleanup jniapi/Cargo.toml comments

* delete commented gstreamer related android code

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* remove unused config variable in servbuild

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* android: more cleanup

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* force no_static_freetype only for android

* use actions to manage sdk, ndk and java

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* rename embedder event names to be more clear.

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* link to startup crash issue

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* fix lint issues

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* upgrade env_logger to 0.10 with duplicate exception

libservo and android_logger can use env_logger 0.10
but quickcheck is still stuck on 0.8 and has not seen
any activity in the last 2 years. This commit adds
a duplicate exception until the quickcheck dependency
can be upgraded (or replaced)

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* android: fix comments

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* disable jemalloc on android

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>

* fixup! replace linux with android in cfg

---------

Signed-off-by: Mukilan Thiyagarajan <mukilan@igalia.com>
Co-authored-by: Martin Robinson <mrobinson@igalia.com>
2024-01-22 13:00:15 +00:00
Mustafa Al-Qinneh
4ea7da8478
Update servo.png to new logo asset 2020-02-24 17:27:07 -05:00
Mustafa Al-Qinneh
07c82962dd
Delete servo-1024.png 2020-02-24 17:26:21 -05:00
Mustafa Al-Qinneh
d340883f7f
Delete servo-1000.png 2020-02-13 10:18:58 -05:00
Mustafa Al-Qinneh
96d6c8354d
Add files via upload
* Added servo-1024.png (replacing servo.png @ 1024px)
2020-02-13 10:16:41 -05:00
Mustafa Al-Qinneh
ed965b6656
Add Servo logo
* Added servo-1000.png (replacing servo.png @ 1024px)
2020-02-13 10:12:27 -05:00
Shinichi Morimoto
41ff93eca2 extended android jni with onMediaSessionSetPositionState 2019-12-03 23:16:43 +09:00
Fernando Jiménez Moreno
59f22abb3e Remove stop button for now and show play/pause in compact mode 2019-11-20 13:34:31 +01:00
Fernando Jiménez Moreno
f65c400828 Update media session metadata and show content text with artist and album 2019-11-20 13:34:30 +01:00
Fernando Jiménez Moreno
caedc28118 Do not play notification sound when creating media session on Android 2019-11-20 13:34:29 +01:00
Fernando Jiménez Moreno
7b5b46f560 Fix play action 2019-11-20 13:34:29 +01:00
Fernando Jiménez Moreno
07483f1d44 Switch play and pause buttons according to playback state 2019-11-20 13:34:29 +01:00
Fernando Jiménez Moreno
b5b8c6c2a8 Remove prev and next track action buttons for now 2019-11-20 13:34:29 +01:00
Fernando Jiménez Moreno
08f9f17ed3 Send MediaSessionAction from Android 2019-11-20 13:33:51 +01:00
Fernando Jiménez Moreno
0bbacdda0c Move media session related code out of MainActivity 2019-11-20 13:33:16 +01:00
Fernando Jiménez Moreno
dd63ba425f MediaSession show media controls on Android 2019-11-20 13:33:15 +01:00
Fernando Jiménez Moreno
3f6569447d MediaSession Android bits 2019-11-20 13:33:15 +01:00
Jan Andre Ikenmeyer
c71988e70b
Make https the default protocol for address bar on Android, too. 2019-11-10 18:08:44 +01:00
Fernando Jiménez Moreno
11993bb8f5 Allow setting GST_DEBUG on Android through mach 2019-10-14 17:27:29 +02:00
Paul Rouget
d339d1f30b Implement window.alert on Android 2019-08-27 08:09:03 +02:00
Paul Rouget
3a374b3455 Expose javascript:window.alert() to libsimpleservo 2019-07-19 16:49:26 +02:00
akshitkrnagpal
027514c3e6 Add support for market:// urls 2019-06-28 17:30:42 -04:00
Manish Goregaokar
d11c81aff5 Remove titlebar
fixes https://github.com/servo/servo/issues/22318
2018-11-29 17:33:06 -08:00
Paul Rouget
651f94fcf8 Handle more config changes 2018-11-22 11:48:41 +01:00
Jan Andre Ikenmeyer
f5ab95786f
Update MPL license to https (part 1) 2018-11-19 14:46:43 +01:00
Fernando Jiménez Moreno
e3a5568bcf Handle open URL intent on Android 2018-10-24 08:59:45 +02:00
Paul Rouget
6d543dec28 com.mozilla to org.mozilla 2018-10-02 08:09:35 +02:00
Josh Matthews
f7516f57a7 Enable use of RUST_LOG with mach run --android. 2018-09-20 14:14:41 -04:00
Carlo Abelli
9b4017e1e0 Fix Android back button behavior
Pressing the back button should call mServoView.goBack if possible.
2018-08-17 09:38:05 -04:00
Paul Rouget
6aa653a46d Show animation status 2018-08-16 13:51:57 +02:00
Paul Rouget
ae407e9a65 Behave properly when app is suspended 2018-08-14 16:52:36 +02:00
Paul Rouget
c36b16546e Introduce ServoSurface 2018-08-01 16:35:22 +08:00
Paul Rouget
e8af185a3d Build a AAR archive alongside the APK 2018-08-01 16:15:47 +08:00
Paul Rouget
6a31864126 Update Gradle and SDK 2018-07-31 22:39:45 +08:00