This commit commit fixes a bug which caused the log sender client not being released when the client application crashes or is killed by the system. This resulted in resources being unnecessarily held by the IDE causing lags
and sometimes, battery drain (#1107).
* refactor: A bunch of (mostly XML) styling
* fix(Main Activity): Make use of a dedicated Splash Activity to enable Dynamic coloring in MainActivity
* feat(edge-to-edge): Ground work to support edge-to-edge experiences throughout the IDE
* fix(edge-to-edge): Manually set bottom padding for fragment containment
* feat(edge-to-edge): Allow full activity rebuild on configuration changes for MainActivity. This allows to ship more specific layout changes and is a ground work to support split screen mode.
* Bug introduced: templates are not shown in the TemplateListFragment after full activity rebuild
* fix: Finish the Splash Activity after launching the Main one
* fix(templates): The list of templates no longer disappears after an activity rebuild or a configuration change
* fix(templates): Keep OnGlobalLayoutListener attached while the View is alive. This ensures that the last item in template list is always aligned to the start.
* feat(design): Custom layout for MainActivity's main fragment in landscape mode
* feat(edge-to-edge): Implement edge-to-edge for PreferencesActivity, move InsetUtils outside of the LimitlessIDEActivity.
* refactor(IDEPreferencesFragment.kt): Comply with the line-length rule, fix a one-line if statement to follow the general codestyle
* refactor(edge-to-edge): Remove PaddingUtils.kt
The reasoning behind this is that after `view.setPadding(left, top, right, bottom)` is executed, `view.getPaddingBottom()` (or for any other side) still returns the old value of padding before the view is measured again. Therefore the implementation of PaddingUtils.kt produces an unwanted and unexpected behaviour.
* feat(edge-to-edge): Create a BottomInsetHeightDistributor view
* fix(templates/design): Use OutlinedButton style for the *Exit* button inside the *New project* wizard's footer
* refactor: Comply with AndroidIDE's code style
* refactor: Make use of helper methods. Optimize XML
* fix(edge-to-edge): Wrong system bar coloring in Dark Mode