Browse Source

Merge branch 'master' into bugfix/search-not-working-when-sharing-outside-of-the-app

Andy Scherzinger 1 year ago
parent
commit
6f4a0cccfc
25 changed files with 110 additions and 206 deletions
  1. 4 0
      app/build.gradle
  2. 6 1
      app/src/main/java/com/owncloud/android/files/services/FileDownloader.java
  3. 11 7
      app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java
  4. 2 6
      app/src/main/java/com/owncloud/android/ui/events/AccountRemovedEvent.kt
  5. 3 4
      app/src/main/java/com/owncloud/android/ui/events/ChangeMenuEvent.kt
  6. 2 9
      app/src/main/java/com/owncloud/android/ui/events/CommentsEvent.kt
  7. 3 4
      app/src/main/java/com/owncloud/android/ui/events/DummyDrawerEvent.kt
  8. 0 37
      app/src/main/java/com/owncloud/android/ui/events/EncryptionEvent.java
  9. 30 0
      app/src/main/java/com/owncloud/android/ui/events/EncryptionEvent.kt
  10. 0 33
      app/src/main/java/com/owncloud/android/ui/events/FavoriteEvent.java
  11. 6 9
      app/src/main/java/com/owncloud/android/ui/events/FavoriteEvent.kt
  12. 0 35
      app/src/main/java/com/owncloud/android/ui/events/InitiateSyncedFolder.java
  13. 0 33
      app/src/main/java/com/owncloud/android/ui/events/MenuItemClickEvent.java
  14. 2 3
      app/src/main/java/com/owncloud/android/ui/events/TokenPushEvent.kt
  15. 22 0
      app/src/main/java/com/owncloud/android/ui/events/VCardToggleEvent.kt
  16. 4 4
      app/src/main/java/com/owncloud/android/ui/fragment/FileDetailFragment.java
  17. 9 9
      app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java
  18. 1 1
      app/src/main/java/com/owncloud/android/ui/fragment/contactsbackup/BackupListFragment.java
  19. 1 0
      app/src/main/res/values-sr/strings.xml
  20. 1 0
      app/src/main/res/values-zh-rCN/strings.xml
  21. 0 7
      app/src/main/res/values/styles.xml
  22. 1 1
      build.gradle
  23. 0 1
      gradle.properties
  24. 1 1
      gradle/wrapper/gradle-wrapper.properties
  25. 1 1
      scripts/analysis/lint-results.txt

+ 4 - 0
app/build.gradle

@@ -126,6 +126,10 @@ android {
             }
         }
 
+        buildFeatures {
+            buildConfig = true
+        }
+
         productFlavors {
             // used for f-droid
             generic {

+ 6 - 1
app/src/main/java/com/owncloud/android/files/services/FileDownloader.java

@@ -83,6 +83,7 @@ import java.util.Vector;
 import javax.inject.Inject;
 
 import androidx.core.app.NotificationCompat;
+import androidx.core.app.ServiceCompat;
 import androidx.localbroadcastmanager.content.LocalBroadcastManager;
 import dagger.android.AndroidInjection;
 import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
@@ -203,7 +204,11 @@ public class FileDownloader extends Service
         Log_OC.d(TAG, "Starting command with id " + startId);
 
         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
-            startForeground(FOREGROUND_SERVICE_ID, mNotification, ServiceInfo.FOREGROUND_SERVICE_TYPE_DATA_SYNC);
+            ServiceCompat.startForeground(
+                this,
+                FOREGROUND_SERVICE_ID,
+                mNotification,
+                ServiceInfo.FOREGROUND_SERVICE_TYPE_DATA_SYNC);
         } else {
             startForeground(FOREGROUND_SERVICE_ID, mNotification);
         }

+ 11 - 7
app/src/main/java/com/owncloud/android/ui/activity/FileDisplayActivity.java

@@ -350,14 +350,18 @@ public class FileDisplayActivity extends FileActivity
     public void onConfigurationChanged(@NonNull Configuration newConfig) {
         super.onConfigurationChanged(newConfig);
 
-        StoragePermissionDialogFragment fragment = (StoragePermissionDialogFragment) getSupportFragmentManager().findFragmentByTag(PERMISSION_CHOICE_DIALOG_TAG);
-        if (fragment != null) {
-            Dialog dialog = fragment.getDialog();
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
+            StoragePermissionDialogFragment fragment =
+                (StoragePermissionDialogFragment) getSupportFragmentManager()
+                    .findFragmentByTag(PERMISSION_CHOICE_DIALOG_TAG);
+            if (fragment != null) {
+                Dialog dialog = fragment.getDialog();
 
-            if (dialog != null && dialog.isShowing()) {
-                dialog.dismiss();
-                getSupportFragmentManager().beginTransaction().remove(fragment).commitNowAllowingStateLoss();
-                PermissionUtil.requestExternalStoragePermission(this, viewThemeUtils);
+                if (dialog != null && dialog.isShowing()) {
+                    dialog.dismiss();
+                    getSupportFragmentManager().beginTransaction().remove(fragment).commitNowAllowingStateLoss();
+                    PermissionUtil.requestExternalStoragePermission(this, viewThemeUtils);
+                }
             }
         }
     }

+ 2 - 6
app/src/main/java/com/owncloud/android/ui/events/AccountRemovedEvent.java → app/src/main/java/com/owncloud/android/ui/events/AccountRemovedEvent.kt

@@ -18,13 +18,9 @@
  * You should have received a copy of the GNU Affero General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
-
-package com.owncloud.android.ui.events;
+package com.owncloud.android.ui.events
 
 /**
  * Event that notifies that an account was removed
  */
-
-public class AccountRemovedEvent {
-
-}
+class AccountRemovedEvent

+ 3 - 4
app/src/main/java/com/owncloud/android/ui/events/ChangeMenuEvent.java → app/src/main/java/com/owncloud/android/ui/events/ChangeMenuEvent.kt

@@ -15,12 +15,11 @@
  * GNU Affero General Public License for more details.
  *
  * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ * along with this program.  If not, see <http:></http:>//www.gnu.org/licenses/>.
  */
-package com.owncloud.android.ui.events;
+package com.owncloud.android.ui.events
 
 /**
  * Currently a dummy event to restore grid view, sort, and search
  */
-public class ChangeMenuEvent {
-}
+class ChangeMenuEvent

+ 2 - 9
app/src/main/java/com/owncloud/android/ui/events/CommentsEvent.java → app/src/main/java/com/owncloud/android/ui/events/CommentsEvent.kt

@@ -18,16 +18,9 @@
  * You should have received a copy of the GNU General Public License
  * along with this program. If not, see <https://www.gnu.org/licenses/>.
  */
-
-package com.owncloud.android.ui.events;
+package com.owncloud.android.ui.events
 
 /**
  * Event for refreshing comment state of a file
  */
-public class CommentsEvent {
-    public final String remoteId;
-
-    public CommentsEvent(String remoteId) {
-        this.remoteId = remoteId;
-    }
-}
+class CommentsEvent(val remoteId: String)

+ 3 - 4
app/src/main/java/com/owncloud/android/ui/events/DummyDrawerEvent.java → app/src/main/java/com/owncloud/android/ui/events/DummyDrawerEvent.kt

@@ -15,12 +15,11 @@
  * GNU Affero General Public License for more details.
  *
  * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ * along with this program.  If not, see <http:></http:>//www.gnu.org/licenses/>.
  */
-package com.owncloud.android.ui.events;
+package com.owncloud.android.ui.events
 
 /**
  * Dummy drawer event
  */
-public class DummyDrawerEvent {
-}
+class DummyDrawerEvent

+ 0 - 37
app/src/main/java/com/owncloud/android/ui/events/EncryptionEvent.java

@@ -1,37 +0,0 @@
-/*
- * Nextcloud Android client application
- *
- * @author Tobias Kaminsky
- * Copyright (C) 2017 Tobias Kaminsky
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-package com.owncloud.android.ui.events;
-
-/**
- * Event for set folder as encrypted/decrypted
- */
-public class EncryptionEvent {
-    public final long localId;
-    public final String remotePath;
-    public final String remoteId;
-    public final boolean shouldBeEncrypted;
-
-    public EncryptionEvent(long localId, String remoteId, String remotePath, boolean shouldBeEncrypted) {
-        this.localId = localId;
-        this.remoteId = remoteId;
-        this.remotePath = remotePath;
-        this.shouldBeEncrypted = shouldBeEncrypted;
-    }
-}

+ 30 - 0
app/src/main/java/com/owncloud/android/ui/events/EncryptionEvent.kt

@@ -0,0 +1,30 @@
+/*
+ * Nextcloud Android client application
+ *
+ * @author Tobias Kaminsky
+ * Copyright (C) 2017 Tobias Kaminsky
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+package com.owncloud.android.ui.events
+
+/**
+ * Event for set folder as encrypted/decrypted
+ */
+class EncryptionEvent(
+    val localId: Long,
+    val remoteId: String,
+    val remotePath: String,
+    val shouldBeEncrypted: Boolean
+)

+ 0 - 33
app/src/main/java/com/owncloud/android/ui/events/FavoriteEvent.java

@@ -1,33 +0,0 @@
-/**
- * Nextcloud Android client application
- *
- * @author Mario Danic
- * Copyright (C) 2017 Mario Danic
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-package com.owncloud.android.ui.events;
-
-/**
- * Event for making favoriting work
- */
-public class FavoriteEvent {
-    public final String remotePath;
-    public final boolean shouldFavorite;
-
-    public FavoriteEvent(String remotePath, boolean shouldFavorite) {
-        this.remotePath = remotePath;
-        this.shouldFavorite = shouldFavorite;
-    }
-}

+ 6 - 9
app/src/main/java/com/owncloud/android/ui/events/VCardToggleEvent.java → app/src/main/java/com/owncloud/android/ui/events/FavoriteEvent.kt

@@ -15,14 +15,11 @@
  * GNU Affero General Public License for more details.
  *
  * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ * along with this program.  If not, see <http:></http:>//www.gnu.org/licenses/>.
  */
-package com.owncloud.android.ui.events;
+package com.owncloud.android.ui.events
 
-public class VCardToggleEvent {
-    public boolean showRestoreButton;
-
-    public VCardToggleEvent(boolean showRestore) {
-        this.showRestoreButton = showRestore;
-    }
-}
+/**
+ * Event for making favoriting work
+ */
+class FavoriteEvent(val remotePath: String, val shouldFavorite: Boolean)

+ 0 - 35
app/src/main/java/com/owncloud/android/ui/events/InitiateSyncedFolder.java

@@ -1,35 +0,0 @@
-/**
- * Nextcloud Android client application
- *
- * @author Mario Danic
- * Copyright (C) 2017 Mario Danic
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-package com.owncloud.android.ui.events;
-
-import com.owncloud.android.datamodel.SyncedFolder;
-
-public class InitiateSyncedFolder {
-    private final SyncedFolder syncedFolder;
-
-
-    public InitiateSyncedFolder(SyncedFolder syncedFolder) {
-        this.syncedFolder = syncedFolder;
-    }
-
-    public SyncedFolder getSyncedFolder() {
-        return syncedFolder;
-    }
-}

+ 0 - 33
app/src/main/java/com/owncloud/android/ui/events/MenuItemClickEvent.java

@@ -1,33 +0,0 @@
-/**
- * Nextcloud Android client application
- *
- * @author Mario Danic
- * Copyright (C) 2017 Mario Danic
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Affero General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU Affero General Public License for more details.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-package com.owncloud.android.ui.events;
-
-import android.view.MenuItem;
-
-/**
- * Menu item click event
- */
-public class MenuItemClickEvent {
-    public final MenuItem menuItem;
-
-    public MenuItemClickEvent(MenuItem menuItem) {
-        this.menuItem = menuItem;
-    }
-}

+ 2 - 3
app/src/main/java/com/owncloud/android/ui/events/TokenPushEvent.java → app/src/main/java/com/owncloud/android/ui/events/TokenPushEvent.kt

@@ -17,10 +17,9 @@
  * You should have received a copy of the GNU Affero General Public License
  * along with this program.  If not, see <http://www.gnu.org/licenses/>.
  */
-package com.owncloud.android.ui.events;
+package com.owncloud.android.ui.events
 
 /**
  * Event to send push token where it belongs
  */
-public class TokenPushEvent {
-}
+class TokenPushEvent 

+ 22 - 0
app/src/main/java/com/owncloud/android/ui/events/VCardToggleEvent.kt

@@ -0,0 +1,22 @@
+/**
+ * Nextcloud Android client application
+ *
+ * @author Mario Danic
+ * Copyright (C) 2017 Mario Danic
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program.  If not, see <http:></http:>//www.gnu.org/licenses/>.
+ */
+package com.owncloud.android.ui.events
+
+class VCardToggleEvent(var showRestoreButton: Boolean)

+ 4 - 4
app/src/main/java/com/owncloud/android/ui/fragment/FileDetailFragment.java

@@ -783,13 +783,13 @@ public class FileDetailFragment extends FileFragment implements OnClickListener,
             OwnCloudClient client = clientFactory.create(user);
 
             ToggleFavoriteRemoteOperation toggleFavoriteOperation = new ToggleFavoriteRemoteOperation(
-                event.shouldFavorite, event.remotePath);
+                event.getShouldFavorite(), event.getRemotePath());
             RemoteOperationResult remoteOperationResult = toggleFavoriteOperation.execute(client);
 
             if (remoteOperationResult.isSuccess()) {
-                getFile().setFavorite(event.shouldFavorite);
-                OCFile file = storageManager.getFileByEncryptedRemotePath(event.remotePath);
-                file.setFavorite(event.shouldFavorite);
+                getFile().setFavorite(event.getShouldFavorite());
+                OCFile file = storageManager.getFileByEncryptedRemotePath(event.getRemotePath());
+                file.setFavorite(event.getShouldFavorite());
                 storageManager.saveFile(file);
             }
 

+ 9 - 9
app/src/main/java/com/owncloud/android/ui/fragment/OCFileListFragment.java

@@ -1588,7 +1588,7 @@ public class OCFileListFragment extends ExtendedListFragment implements
 
     @Subscribe(threadMode = ThreadMode.BACKGROUND)
     public void onMessageEvent(CommentsEvent event) {
-        mAdapter.refreshCommentsCount(event.remoteId);
+        mAdapter.refreshCommentsCount(event.getRemoteId());
     }
 
     @Subscribe(threadMode = ThreadMode.BACKGROUND)
@@ -1598,13 +1598,13 @@ public class OCFileListFragment extends ExtendedListFragment implements
             OwnCloudClient client = clientFactory.create(user);
 
             ToggleFavoriteRemoteOperation toggleFavoriteOperation = new ToggleFavoriteRemoteOperation(
-                event.shouldFavorite, event.remotePath);
+                event.getShouldFavorite(), event.getRemotePath());
             RemoteOperationResult remoteOperationResult = toggleFavoriteOperation.execute(client);
 
             if (remoteOperationResult.isSuccess()) {
-                boolean removeFromList = currentSearchType == SearchType.FAVORITE_SEARCH && !event.shouldFavorite;
+                boolean removeFromList = currentSearchType == SearchType.FAVORITE_SEARCH && !event.getShouldFavorite();
                 setEmptyListMessage(SearchType.FAVORITE_SEARCH);
-                mAdapter.setFavoriteAttributeForItemID(event.remotePath, event.shouldFavorite, removeFromList);
+                mAdapter.setFavoriteAttributeForItemID(event.getRemotePath(), event.getShouldFavorite(), removeFromList);
             }
 
         } catch (ClientFactory.CreationException e) {
@@ -1692,7 +1692,7 @@ public class OCFileListFragment extends ExtendedListFragment implements
         String privateKey = arbitraryDataProvider.getValue(user, EncryptionUtils.PRIVATE_KEY);
 
         FileDataStorageManager storageManager = mContainerActivity.getStorageManager();
-        OCFile file = storageManager.getFileByRemoteId(event.remoteId);
+        OCFile file = storageManager.getFileByRemoteId(event.getRemoteId());
 
         if (publicKey.isEmpty() || privateKey.isEmpty()) {
             Log_OC.d(TAG, "no public key for " + user.getAccountName());
@@ -1706,10 +1706,10 @@ public class OCFileListFragment extends ExtendedListFragment implements
             dialog.show(getParentFragmentManager(), SETUP_ENCRYPTION_DIALOG_TAG);
         } else {
             encryptFolder(file,
-                          event.localId,
-                          event.remoteId,
-                          event.remotePath,
-                          event.shouldBeEncrypted,
+                          event.getLocalId(),
+                          event.getRemoteId(),
+                          event.getRemotePath(),
+                          event.getShouldBeEncrypted(),
                           publicKey,
                           privateKey);
         }

+ 1 - 1
app/src/main/java/com/owncloud/android/ui/fragment/contactsbackup/BackupListFragment.java

@@ -270,7 +270,7 @@ public class BackupListFragment extends FileFragment implements Injectable {
 
     @Subscribe(threadMode = ThreadMode.MAIN)
     public void onMessageEvent(VCardToggleEvent event) {
-        if (event.showRestoreButton) {
+        if (event.getShowRestoreButton()) {
             binding.contactlistRestoreSelectedContainer.setVisibility(View.VISIBLE);
         } else {
             binding.contactlistRestoreSelectedContainer.setVisibility(View.GONE);

+ 1 - 0
app/src/main/res/values-sr/strings.xml

@@ -884,6 +884,7 @@
     <string name="upload_lock_failed">Неуспело закључавање фасцикле</string>
     <string name="upload_old_android">Шифровање је могуће само са &gt;= Андроидом 5.0</string>
     <string name="upload_query_move_foreign_files">Недостатак простора  спречава копирање фајлова у фасциклу %1$s. Желите ли да их преместите тамо?</string>
+    <string name="upload_quota_exceeded">Прекорачена је квота за складиште</string>
     <string name="upload_scan_doc_upload">Скенирање документа камером</string>
     <string name="upload_sync_conflict">Сукоб синхронизације. Разрешите га ручно</string>
     <string name="upload_unknown_error">Непозната грешка</string>

+ 1 - 0
app/src/main/res/values-zh-rCN/strings.xml

@@ -887,6 +887,7 @@
     <string name="upload_lock_failed">锁定文件夹失败</string>
     <string name="upload_old_android">加密功能仅适用于安卓 5.0 及以上版本</string>
     <string name="upload_query_move_foreign_files">空间不足将阻止将所选文件复制到%1$s文件夹中。 你想把它们移到那里吗?</string>
+    <string name="upload_quota_exceeded">超出存储限额</string>
     <string name="upload_scan_doc_upload">使用相机扫描文档</string>
     <string name="upload_sync_conflict">同步时发生异常,请手动同步</string>
     <string name="upload_unknown_error">未知错误</string>

+ 0 - 7
app/src/main/res/values/styles.xml

@@ -233,13 +233,6 @@
         <item name="android:textStyle">bold</item>
     </style>
 
-    <style name="Button.Borderless.Destructive" parent="Widget.Material3.Button.TextButton">
-        <item name="android:textColor">@color/highlight_textColor_Warning</item>
-        <item name="android:textAllCaps">false</item>
-        <item name="android:typeface">sans</item>
-        <item name="android:textStyle">bold</item>
-    </style>
-
     <style name="Button.Borderless.Login" parent="Widget.Material3.Button.TextButton">
         <item name="android:textColor">@color/fg_inverse</item>
         <item name="android:textAllCaps">false</item>

+ 1 - 1
build.gradle

@@ -1,6 +1,6 @@
 buildscript {
     ext {
-        androidPluginVersion = '8.1.4'
+        androidPluginVersion = '8.2.0'
         appCompatVersion = '1.6.1'
         jacoco_version = '0.8.10'
         kotlin_version = '1.8.22'

+ 0 - 1
gradle.properties

@@ -4,7 +4,6 @@ NC_TEST_SERVER_USERNAME=test
 NC_TEST_SERVER_PASSWORD=test
 android.enableJetifier=true
 android.useAndroidX=true
-android.defaults.buildfeatures.buildconfig=true
 android.nonTransitiveRClass=false
 android.nonFinalResIds=false
 #android.debug.obsoleteApi=true

+ 1 - 1
gradle/wrapper/gradle-wrapper.properties

@@ -1,6 +1,6 @@
 #Fri Jan 13 08:21:45 CET 2023
 distributionBase=GRADLE_USER_HOME
-distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.2-bin.zip
 distributionPath=wrapper/dists
 zipStorePath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME

+ 1 - 1
scripts/analysis/lint-results.txt

@@ -1,2 +1,2 @@
 DO NOT TOUCH; GENERATED BY DRONE
-      <span class="mdl-layout-title">Lint Report: 74 warnings</span>
+      <span class="mdl-layout-title">Lint Report: 9 errors and 75 warnings</span>