Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: xbmc/Kore
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v2.3.2
Choose a base ref
...
head repository: xbmc/Kore
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Sep 28, 2017

  1. Copy the full SHA
    01f90c1 View commit details
  2. Copy the full SHA
    d447789 View commit details

Commits on Oct 1, 2017

  1. unit test IDE execution improvements (#463)

    * update README about Run Configuration setting
    * update task that needs to depend on assembleFullDebug
    ** this was needed to run individual local tests
    calebzor authored and SyncedSynapse committed Oct 1, 2017
    Copy the full SHA
    8fb24ee View commit details

Commits on Oct 8, 2017

  1. Use hardware volume keys from anywhere inside Kore (#453)

    * Allow the RemoteActivity and BaseMediaActivity to show a volume controller dialog when hardware volume keys are pressed
    ** The dialog handles the key events and makes callbacks to the activities to handle showing the dialog itself
    
    * Minor improvements
    ** Make HighlightButton render in the IDE GUI Editor
    ** Minor code cleanup
    ** set currentActivePlayerId = -1; on playerOnStop in BaseMediaActivity to be more consistent
    
    resolves #235
    calebzor authored and SyncedSynapse committed Oct 8, 2017
    Copy the full SHA
    108fb88 View commit details

Commits on Oct 10, 2017

  1. Bug/androidtests (#466)

    * Fixed issue with selecting tabs
    
    * Fixed issue with switching host on other thread than UI thread
    
    * Fixed concurrent modification exception in JSONConnectionHandlerManager
    
    * Fixed issue with drawer not closing
    
    * Fixes issue with running method only supported on API 21 and higher
    poisdeux authored and SyncedSynapse committed Oct 10, 2017
    Copy the full SHA
    9e65350 View commit details

Commits on Oct 17, 2017

  1. Added handler for shared playlists from the YouTube app (#472)

    - also fixed missing "/play/" segment in Vimeo plugin url
    monzee authored and SyncedSynapse committed Oct 17, 2017
    Copy the full SHA
    41a433c View commit details

Commits on Oct 19, 2017

  1. Implemented simple Kodi markup code applier for the Now Playing fragm…

    …ent (#471)
    
    * Implemented simple Kodi markup code applier for the Now Playing fragment
    * Moved to UIUtils; added early exit; now handles nesting of the same type
    * Added handlers for LOWERCASE, CAPITALIZE, LIGHT and COLOR
    - LOWERCASE and CAPITALIZE work, LIGHT and COLOR are just stripped out
    - inlined the TextAppearanceSpan new's. Turns out they can't be reused.
    * updated javadoc
    * fixed crash when capitalizing an empty word
    monzee authored and SyncedSynapse committed Oct 19, 2017
    Copy the full SHA
    45ecfc2 View commit details

Commits on Oct 20, 2017

  1. Copy the full SHA
    206b5c9 View commit details

Commits on Oct 24, 2017

  1. Copy the full SHA
    8f6541e View commit details
  2. Implemented integration tests for the control pad (#476)

    * Added two abstract methods setSharedPreferences and
         configureHostInfo to allow test classes extending
         AbstractTestClass to set preferences or change the host info.
       * Implemented a mock event server to test event server commands
       * Implemented a handler to handle JSON input events over HTTP
    poisdeux authored and SyncedSynapse committed Oct 24, 2017
    Copy the full SHA
    bdefeaf View commit details

Commits on Oct 27, 2017

  1. Implemented a scalable control pad (#477)

    * Refactored RemoteFragment and created a compound view for the
         actual remote. I called it ControlPad to make it more clear what
         its main function is.
       * Implemented a custom grid layout (SquareGridLayout) that will
         always be square. When its width and height are both set to
         match_parent, it will take the smallest of the two as the
         actual size.
       * For devices with a smallest width smaller then 360dp the ControlPad
         is sized to the maximum available space. For larger devices we still
         use the old fixed sizes.
    
    Refactored code to use styles
    poisdeux authored and SyncedSynapse committed Oct 27, 2017
    Copy the full SHA
    b764fc6 View commit details

Commits on Nov 11, 2017

  1. Add Adaptive Icon For API 26+ (#450)

    * Target Sdk Version 26
    * Add Adaptive Icon For API 26+
    * Update travis to compile against API 26
    * Move SVG files to art/launcher/v26/ per CR
    * Scale logo to 83%
    * Update buildToolsVersion to 26.0.2
    * Update travis build-tools to 26.0.2
    RaafatAkkad authored and SyncedSynapse committed Nov 11, 2017
    Copy the full SHA
    fa67964 View commit details

Commits on Nov 16, 2017

  1. Copy the full SHA
    ce664a0 View commit details

Commits on Nov 29, 2017

  1. Copy the full SHA
    4310d11 View commit details

Commits on Dec 4, 2017

  1. Fix NPE reported on Google Play, occurring in RemoteFragment.SetNowPl…

    …ayingInfo, because the ListType.ItemsAll might be null after a call to Player.GetItem
    SyncedSynapse committed Dec 4, 2017
    Copy the full SHA
    7e519eb View commit details

Commits on Dec 5, 2017

  1. Refactored AbstractFragment to not depend on AbstractInfoFragment (#487)

    Due to a previous refactoring, dataHolder was still of type
    AbstractInfoFragment.DataHolder which should be just DataHolder
    in AbstractFragment. Although AbstractInfoFragment inherits from
    AbstractFragment the code works. However, on KitKat (4.4) some
    devices reported a missing method which might be caused by this "weird"
    inheriting. Hopefully this fixes that.
    poisdeux authored and SyncedSynapse committed Dec 5, 2017
    Copy the full SHA
    2aa4f93 View commit details

Commits on Dec 12, 2017

  1. Update strings.xml (#490)

    KowalskiOmniROM authored and SyncedSynapse committed Dec 12, 2017
    Copy the full SHA
    8daa342 View commit details

Commits on Dec 22, 2017

  1. Fixed lint errors (#491)

    Lint is complaining about the new launcher icons in 'res/mipmap-anydpi-v26'
    are not in PNG format. These are now defined in XML and lint is probably
    not aware of the new XML format for API v26 and higher.
    
    This also fixes usage of "android:layout_marginEnd". Which is only
    supported from API v17.
    
    Added running lintFullRelease to travis-CI build.
    poisdeux authored and SyncedSynapse committed Dec 22, 2017
    Copy the full SHA
    b0e6d32 View commit details
  2. Disabled shared element transitions from API 27 (#494)

    AdapterView is not supported by the transition framework. This
    became an issue with the release of API 27. In Android 8.1 the
    shared element view is removed from the exiting fragment. This
    causes Android to call the removeView method from AdapterView
    which is not implemented and causes the app to crash.
    
    We can reenable shared element transitions for API 27 and up by
    refactoring the GridView usage to RecycleView.
    poisdeux authored and SyncedSynapse committed Dec 22, 2017
    Copy the full SHA
    250c1f0 View commit details

Commits on Dec 24, 2017

  1. Fix notifications to work with Android Oreo

    Whan the background service is launcher, it is launched on the foreground and a notification is always shown.
    The service stays on while something is playing. It stops itself on a connection error, quitting Kodi or 5 seconds after stopping
    Make the Pause Phone Calls preference dependent on the Show Notification preference, as we always need to show a notification when the service is running
    SyncedSynapse committed Dec 24, 2017
    Copy the full SHA
    3077653 View commit details

Commits on Dec 25, 2017

  1. Copy the full SHA
    d0fb6f2 View commit details

Commits on Jan 3, 2018

  1. Copy the full SHA
    6713686 View commit details

Commits on Jan 4, 2018

  1. Update copyright

    Fix values-iw/arrays.xml
    Create values-pt/arrays.xml
    SyncedSynapse committed Jan 4, 2018
    Copy the full SHA
    a11fcc9 View commit details

Commits on Jan 16, 2018

  1. Fixed removing highlight on < v21 devices (#502)

    * It seems tinting is applied on pre-Lollipop devices using
         a color filter. HighlightButton used clearColorFilter to remove
         the highlight color and revert back to the original color. This
         caused an issue on < v21 devices as the View would loose its tint.
    poisdeux authored and SyncedSynapse committed Jan 16, 2018
    Copy the full SHA
    5f734bb View commit details

Commits on Jan 26, 2018

  1. Refactored share logic to show a notification when an item is added t…

    …o the playlist (#473)
    
    - added method to HostConnection that returns a Future object instead of
      taking a callback.
    - added logic for handling null Handlers in HostConnection methods
    - added method to HostManager to run a function that takes a HostConnection
      in a background thread where the Future API results above can be
      synchronously composed.
    - replaced chain of callbacks in RemoteActivity with a sequence of
      future gets in OpenSharedUrl.
    monzee authored and SyncedSynapse committed Jan 26, 2018
    Copy the full SHA
    1e9160c View commit details
  2. Refactored applying tint color on control pad (#505)

    ControlPad now uses AppCompatImageView to support theme colors.
    Instead of applying the colors programmatically they are now defined
    in the layout file.
    poisdeux authored and SyncedSynapse committed Jan 26, 2018
    Copy the full SHA
    e0d1e53 View commit details
  3. Copy the full SHA
    d0bd784 View commit details

Commits on Feb 6, 2018

  1. Simplify hardware volume key handling

    There's no need to have so many classes to handle the hardware volume keys. This PR simplifies it, without duplicating any more code than was already duplicated.
    SyncedSynapse authored and poisdeux committed Feb 6, 2018
    Copy the full SHA
    db81d44 View commit details

Commits on Feb 9, 2018

  1. Enable playing movies on device which app is running

        playing movie on local device using in-device video app such as
        kodi or mxplayer ...
    yytsui authored and SyncedSynapse committed Feb 9, 2018
    Copy the full SHA
    0cd91c3 View commit details
  2. Redesigned playing movies on device running Kore

    * Implemented a new widget "fabspeeddial"
       * Provides user with two options to play the media item. One
         option to play the item on Kodi, one to play it on the remote.
       * Replaced deprecated FAB button from
         com.melnykov:floatingactionbutton:1.3.0 with the FAB button from
         the design library
       * Implemented a busy indicator (pulsate) when fab button is clicked
         and JSON  API method is still pending
       * Added a setting to allow the user to disable local playback and
         revert back to the old behaviour
    * Refactored AbstractFragmentInfo
       * Replaced RelativeLayout by CoordinatorLayout to support
         hiding/showing the FAB button when scrolling
       * Replaced the tree view observer to fade out art view when scrolling
         with a behavior for the CoordinaterLayout
    * Removed empty theme file for v19
    * Refactored HostConnection to allow new activities to attach its
      callbacks to any pending ApiMethod. This is required to support device
      configuration changes.
    poisdeux authored and SyncedSynapse committed Feb 9, 2018
    Copy the full SHA
    e2c39e3 View commit details

Commits on Feb 22, 2018

  1. Update strings.xml

    KowalskiOmniROM authored and SyncedSynapse committed Feb 22, 2018
    Copy the full SHA
    13b8d27 View commit details
  2. Tweak FAB speed dial design

    SyncedSynapse authored and poisdeux committed Feb 22, 2018
    Copy the full SHA
    1b329e2 View commit details
  3. Change the source of AlbumGenres table to support Kodi v18

    As detailed in xbmc/xbmc#13051, Kodi v18 changes the way album genres are handled, as the genre (by which i mean `genreId`) ceases to be available at the album level, being only available at the songs level.
    This impacts Kore because `GetAlbums` and `GetAlbumDetails` won't return the `genreId` tag, from which the local AlbumGenres table was populated.
    
    This PR changes the source of the local AlbumGenres table to be the `genreId` returned at the song level (by `GetSongs`), to make it somewhat more consistent with the way Kodi will handle things from now on.
    SyncedSynapse authored and poisdeux committed Feb 22, 2018
    Copy the full SHA
    246693a View commit details

Commits on Feb 26, 2018

  1. Prevent the refresh animation from appearing in a sylent sync

    When a silent sync is running the refresh animation shouldn't appear and this wasn't being repected in some situations. For instance, when not connected to Kodi, starting from a TV Show details, selecting one episode or season and hitting back, the animation would appear. This PR makes sure that it is only shown if it isn't silent.
    SyncedSynapse authored and poisdeux committed Feb 26, 2018
    Copy the full SHA
    cda70ce View commit details
  2. Copy the full SHA
    2206b90 View commit details

Commits on Mar 12, 2018

  1. Fix PVR section back navigation

    SyncedSynapse authored and poisdeux committed Mar 12, 2018
    Copy the full SHA
    94ed40a View commit details
  2. Copy the full SHA
    38e8a7a View commit details

Commits on Mar 29, 2018

  1. Updated Hebrew translation (#521)

    yarons authored and SyncedSynapse committed Mar 29, 2018
    Copy the full SHA
    2f2791a View commit details

Commits on Apr 5, 2018

  1. Upgraded butterknife to 8.8.1 (#524)

    Refactored MusicListFragment and PVRListFragment to use AbstractTabsFragment
    Fixed scrolling in a nested scroll view using espresso
    Fixed issue with setting and checking Kodi major version
    poisdeux authored and SyncedSynapse committed Apr 5, 2018
    Copy the full SHA
    2ed9684 View commit details
  2. Add metadata for fdroid (#527)

    mueller-ma authored and SyncedSynapse committed Apr 5, 2018
    Copy the full SHA
    68b5586 View commit details

Commits on Apr 6, 2018

  1. Fixed issue testing TVShowActivity (#528)

    As we now use a nested scroll view the tests for TV shows all
    failed because the scroll action was performed on a normal scroll
    view only. This has simply been fixed by implementing a custom action
    that also accepts a nested scroll view.
    poisdeux authored and SyncedSynapse committed Apr 6, 2018
    Copy the full SHA
    ff67880 View commit details
  2. Fixed issue with control pad button tests (#529)

    * Fixed tests to determine which Kodi version Kore is connected too.
         This caused the long press tests to fail as Kore didn't see v17 as
         the version that should use the new JSON RPC call.
       * Refactored setting the Kodi version during testing to also set the
         correct version in the database, instead of only setting it in the HostInfo
         instance.
    poisdeux authored and SyncedSynapse committed Apr 6, 2018
    Copy the full SHA
    93d4d37 View commit details

Commits on Apr 15, 2018

  1. Copy the full SHA
    7c18df2 View commit details
  2. Copy the full SHA
    c96b59c View commit details
  3. Copy the full SHA
    bff69e1 View commit details

Commits on Apr 18, 2018

  1. Copy the full SHA
    1d6f9c2 View commit details

Commits on Apr 24, 2018

  1. Simplify sharing intent handling

    Redesign ApiFuture to be more generic and independent of other classes
    SyncedSynapse authored and poisdeux committed Apr 24, 2018
    Copy the full SHA
    75f8326 View commit details

Commits on May 3, 2018

  1. Fixed issue with running many instrumentation tests (#536)

    During tests, activities were not closed properly causing increasing
    memory usage, which resulted in failing tests because of
    out of memory errors.
    This has been fixed by using the test orchestrator which runs
    each test in its own instrumentation instance.
    
    Removed the instrumentationTest flavor and replaced it by using the
    default debug build type. The flavor was used to keep the required
    permissions during testing separate from release versions. This can
    also be accomplished using the debug build type.
    
    The PagerSlidingTabStrip from astuetz doesn't work with the new
    android build tools. As the project seems dead, I replaced it with
    PagerTabStrip from the support library.
    poisdeux authored and SyncedSynapse committed May 3, 2018
    Copy the full SHA
    f631efe View commit details

Commits on May 4, 2018

  1. Fix handling of drawables on pre Lollipop versions

    Reverts the change introduced in f631efe , which changed the way drawables were handled, which introduced issues on pre Lollipop.
    SyncedSynapse authored and poisdeux committed May 4, 2018
    Copy the full SHA
    d3dcb4e View commit details
  2. Add support for handling Player.OnResume event through TCP

    As detailed in xbmc/xbmc#13726 (comment), Kodi will stop using the event Player.OnPlay when resuming a video, sending a Player.OnResume event instead. This PR handles that change.
    SyncedSynapse authored and poisdeux committed May 4, 2018
    Copy the full SHA
    de68382 View commit details
Showing 629 changed files with 64,435 additions and 22,647 deletions.
79 changes: 79 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
---
name: Problem report
about: Create an extensive report to help us document a problem

---
<!--- Please fill out this template to the best of your ability. You can always edit this issue once you have created it. -->
<!--- Read the following link before you create a new problem report: https://kodi.wiki/view/HOW-TO:Submit_a_bug_report -->
## Bug report
### Describe the bug
Here is a clear and concise description of what the problem is:
<!--- Provide a more detailed introduction to the issue itself, and why you consider it to be a bug -->
<!--- A bug report that is not clear will be closed -->
<!--- Put your text below this line -->



## Expected Behavior
Here is a clear and concise description of what was expected to happen:
<!--- Tell us what should happen -->
<!--- Put your text below this line -->



## Actual Behavior
<!--- Tell us what happens instead -->
<!--- Put your text below this line -->



## Possible Fix
<!--- Not obligatory, but suggest a fix or reason for the bug -->
<!--- Put your text below this line -->



### To Reproduce
Steps to reproduce the behavior:
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
<!--- reproduce this bug. Include code to reproduce, if relevant -->
<!--- Put your text below this line -->
1.
2.
3.


### Debuglog
<!--- Put your text below this line -->
The debuglog can be found here:



### Screenshots
Here are some links or screenshots to help explain the problem:
<!--- Put your text below this line -->



## Additional context or screenshots (if appropriate)
Here is some additional context or explanation that might help:
<!--- How has this bug affected you? What were you trying to accomplish? -->
<!--- Put your text below this line -->



### Your Environment
Used Operating system:
<!--- Include as many relevant details about the environment you experienced the bug in -->
<!--- Put your text below this line. Checkboxes can easily be ticked once issue is created -->
- Mobile device:
- Android version:
- Kodi version and platform:
- Kore version:




<!--- End of this issue -->
*note: Once the issue is made we require you to update it with new information or Kodi versions should that be required.
Team Kodi will consider your problem report however, we will not make any promises the problem will be solved.*
80 changes: 80 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
---
name: Problem report
about: Create an extensive report to help us document a problem

---
<!--- Please fill out this template to the best of your ability. You can always edit this issue once you have created it. -->
<!--- Read the following link before you create a new problem report: https://kodi.wiki/view/HOW-TO:Submit_a_bug_report -->
## Bug report
### Describe the bug
Here is a clear and concise description of what the problem is:
<!--- Provide a more detailed introduction to the issue itself, and why you consider it to be a bug -->
<!--- A bug report that is not clear will be closed -->
<!--- Put your text below this line -->



## Expected Behavior
Here is a clear and concise description of what was expected to happen:
<!--- Tell us what should happen -->
<!--- Put your text below this line -->



## Actual Behavior
<!--- Tell us what happens instead -->
<!--- Put your text below this line -->



## Possible Fix
<!--- Not obligatory, but suggest a fix or reason for the bug -->
<!--- Put your text below this line -->



### To Reproduce
Steps to reproduce the behavior:
<!--- Provide a link to a live example, or an unambiguous set of steps to -->
<!--- reproduce this bug. Include code to reproduce, if relevant -->
<!--- Put your text below this line -->
1.
2.
3.


### Debuglog
<!--- Put your text below this line -->
<!--- A debuglog is always mandatory when creating an issue. Provide one! -->
The debuglog can be found here:



### Screenshots
Here are some links or screenshots to help explain the problem:
<!--- Put your text below this line -->



## Additional context or screenshots (if appropriate)
Here is some additional context or explanation that might help:
<!--- How has this bug affected you? What were you trying to accomplish? -->
<!--- Put your text below this line -->



### Your Environment
Used Operating system:
<!--- Include as many relevant details about the environment you experienced the bug in -->
<!--- Put your text below this line. Checkboxes can easily be ticked once issue is created -->
- Mobile device:
- Android version:
- Kodi version and platform:
- Kore version:




<!--- End of this issue -->
*note: Once the issue is made we require you to update it with new information or Kodi versions should that be required.
Team Kodi will consider your problem report however, we will not make any promises the problem will be solved.*
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_suggestion.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
name: Feature suggestion
about: Create a feature suggestion item

---
<!--- Please fill out this template to the best of your ability. You can always edit this issue once you have created it. -->
## Feature suggestion
**Detailed Description**
<!--- Provide a detailed description of the change or addition you are proposing -->



### Context
<!--- Why is this change important to you? How would you use it? -->
<!--- How can it benefit other users? -->



### Possible Implementation
<!--- Not obligatory, but suggest an idea for implementing addition or change -->



### Additional context, screenshots or links
Here are some relevant links or screenshots:
<!--- Put your text below this line -->




<!--- End of this issue -->
*Note: Team Kodi will consider this item however we will not make any promises if it will be included.*
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/roadmap_item.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
name: Roadmap suggestion
about: Create a roadmap/todo suggestion item (Team Kodi members only!)

---
<!--- Please fill out this template to the best of your ability. You can always edit this issue once you have created it. -->
## Roadmap or todo suggestion
**Detailed Description**
<!--- Provide a detailed description of the change or addition you are proposing -->



### Context
<!--- Why is this change important to you? How would you use it? -->
<!--- How can it benefit other users? -->



### Possible Implementation
<!--- Not obligatory, but suggest an idea for implementing addition or change -->



### Additional context, screenshots or links
Here are some relevant links or screenshots
<!--- Put your text below this line -->




<!--- End of this issue -->
*Note: Team Kodi will consider this item however we will not make any promises if it will be included.*
22 changes: 22 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Build App

on: [push, pull_request]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2.3.4

- name: Setup Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '17'

- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v1.0.4

- name: Build
run: bash gradlew assembleRelease lintRelease testDebugUnitTest
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -13,12 +13,12 @@
#/.idea/libraries

# Local configuration file (sdk path, etc)
gradle.properties
local.properties
app/keystore.properties

# Keystores
*.keystore
*.jks

# Windows
.DS_Store
15 changes: 5 additions & 10 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,30 +1,25 @@
language: android
jdk: oraclejdk8
jdk: oraclejdk17
sudo: false

env:
matrix:
- ANDROID_TARGET=android-25
- ANDROID_TARGET=android-32
global:
- GRADLE_OPTS="-Xms128m"

android:
components:
# following added as quick fix to get support for 23.0.3 build tools
# "tools" always refers to the latest build tools version. Remove this
# when travis is able to parse "build-tools-23.0.3" correctly.
# See https://github.com/travis-ci/travis-ci/issues/5036
- tools
# needed build tools
- build-tools-26.0.1
- build-tools-32.0.0

# The SDK version used to compile your project
- android-25
- android-32

# extra needed components
- extra-android-m2repository

before_script:

script:
- ./gradlew testFullDebugUnitTest assembleFullRelease
- ./gradlew assembleRelease lintRelease testDebugUnitTest
82 changes: 82 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,88 @@
Changelog
---------

Version 3.1.0
-------------
Minor update, primarily aimed at ensuring Kore remains up to date with the latest Android versions, while also addressing a few bugs along the way.

Version 3.0.0
-------------
Major changes in this version, bringing Kore up to date with the current Android platform (well, except for migrating to Kotlin, which to be honest wouldn't bring that much benefits, given that only replacing the syntax without taking advantage of the newer facilities provided by Kotlin/Android wouldn't bring major benefits).
Anyway, the major changes since the last version are:
- Migrate to Android's Material 3 UI guidelines, namely:
- Review themes and colors, adding support for light and dark modes based on the device's settings
- Add support for dynamic colors, which change depending on the user's wallpaper (on Android 12+)
- Use images with round corners and update buttons, text boxes, etc to current standards
- Update media notifications and integrate them with Android's Media Session.
Note: if the media notification disappears after a few minutes, even though something is playing on Kodi, that's caused by the some aggressive battery optimization settings which forcefully stop the notification. This happens with some manufaturers that don't follow Android's guidelines, in a futile and artificial attempt to extent the battery life (Xiaomi, OnePlus, Samsung, etc), and the solution is to not restrict Kore's battery usage (the way to do it depends on the specific device, more info can be obtained at https://dontkillmyapp.com/)
- Redesign most of Kore's screens, the major changes being:
- The Remote screen, adding the current playback state and better media controls allow for more control of what's playing
- The Now Playing panel, adding the current playback state and media control buttons
- The Movies, TV Shows, Music and Addons information screens, doing a complete redesign, particularly on the button actions section. The IMDb link has been removed as it was seldom broken and replaced with a generic Google search, where appropriate.
Note, the "Play locally" function is now called "Stream", which is more appropriate and concise
- The Artist details screen, to show the artist albums beneath its general information
- Review all icons, updating them to current ones
- Improve showing the connection status (connecting, not connected or connected) on the various screens
- Make top app bar collapsable, and on the remote screen allow the background image to use up all the screen
- Improve the screen transitions
- Fix access to media storage in current Android versions
- General code cleaning, remove deprecated code and update current library versions
- Lots of other small bug fixes


Version 2.5.3
-------------
- Add support for SendToKodi
- Add support for sharing from Twitch
- Allow to disable direct share on a per host basis
- Bug fixes, specifically issues with thumbnails on Kodi Matrix and errors that prevented downloading files from Kodi

Version 2.5.1
-------------
- Add support for sharing from Arte video (The European Culture Channel) to Kodi
- Add support for sharing from Amazon Prime Videos
- Fix download of media files
- Support local play of items in the "Files" section
- Various improvments and bug fixes: Fix "Play from here" in the "Files" section, refresh of playlists in the remote, sharing local filenames with spaces in the name, support for self-signed certificates, remember last used tab, etc.

Version 2.5.0
-------------
- Include search option in PVR section
- Allow sorting PVR recordings and optionally hiding watched items
- Added support for sharing local files to Kodi, either by going into the side menu option "Local Files", or by choosing Kore as the share target (when accessing the file, for instance via a file browser)
- Allow changing Kore's language in Settings
- Add support to sharing from Soundcloud to Kodi
- New sort option for albums, movies and tv shows: by year
- Added new color themes (Sunrise and Sunset) and tweaked the others
- Scroll titles, when these are too long to fit (in the Now Playing and Info screens)
- Kore now shows all the available playlists, even when nothing's playing
- Update notifications to use the default Android style
- Movie ratings added to movie list
- New translations (Korean, Slovak)
- Bug fixes and UI tweaks

Version 2.4.7
-------------
- Improved addons list
- Enable direct sharing of a URL to a specific host
- Bug fixes and UI tweaks

Version 2.4.4
-------------
- Enable playing movies locally on device
- Add new setting to use skip steps instead of seeking in the notification
- Improve sharing from youtube
- Bug fixes and UI tweaks

Version 2.3.3
-------------
- Fixes for Android Oreo
- Make control pad scalable on smaller devices
- Improve showing text with markup codes on the Now Playing and PVR sections
- Handle playlists shared from YouTube app
- Option to use volume hardware keys anywhere inside Kore
- Bug fixes

Version 2.3.2
-------------
- New slide up panel with media controls on information screens
Loading