Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/stefan-niedermann/nextcloud-notes.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/android/activity/NoteListWidgetConfigurationActivity.java4
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/android/fragment/AccountChooserAdapter.java15
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/android/fragment/MoveAccountDialogFragment.java4
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java2
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragment.java6
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/branding/BrandedSwitchPreference.java2
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/glide/SingleSignOnStreamFetcher.java4
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java4
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/model/ApiVersion.java4
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/model/NoteListsWidgetData.java2
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolderWithExcerpt.java1
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/model/SectionItemDecoration.java1
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java1
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java1
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesDatabase.java84
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/util/DeviceCredentialUtil.java7
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java1
-rw-r--r--app/src/main/java/it/niedermann/owncloud/notes/util/Notes.java1
-rw-r--r--app/src/main/res/drawable/background.pngbin44461 -> 0 bytes
-rw-r--r--app/src/main/res/drawable/ic_arrow_drop_down_white_24dp.xml5
-rw-r--r--app/src/main/res/layout/activity_exception.xml2
-rw-r--r--app/src/main/res/layout/activity_notes_list_view.xml16
-rw-r--r--app/src/main/res/layout/dialog_account_switcher.xml8
-rw-r--r--app/src/main/res/layout/drawer_layout.xml3
-rw-r--r--app/src/main/res/layout/item_account.xml48
-rw-r--r--app/src/main/res/layout/item_account_choose.xml5
-rw-r--r--app/src/main/res/layout/item_category.xml2
-rw-r--r--app/src/main/res/layout/item_navigation.xml5
-rw-r--r--app/src/main/res/layout/item_notes_list_note_item_grid.xml7
-rw-r--r--app/src/main/res/layout/item_notes_list_note_item_grid_only_title.xml3
-rw-r--r--app/src/main/res/layout/item_notes_list_note_item_with_excerpt.xml10
-rw-r--r--app/src/main/res/layout/item_notes_list_note_item_without_excerpt.xml9
-rw-r--r--app/src/main/res/layout/item_notes_list_section_item.xml2
-rw-r--r--app/src/main/res/layout/item_preference_category.xml2
-rw-r--r--app/src/main/res/layout/item_tip.xml1
-rw-r--r--app/src/main/res/layout/widget_entry.xml6
-rw-r--r--app/src/main/res/layout/widget_entry_dark.xml6
-rw-r--r--app/src/main/res/layout/widget_note_list.xml10
-rw-r--r--app/src/main/res/layout/widget_note_list_dark.xml10
-rw-r--r--app/src/main/res/values/colors.xml3
-rw-r--r--app/src/main/res/values/dimens.xml3
-rw-r--r--app/src/main/res/values/strings.xml7
-rw-r--r--app/src/test/java/android/text/TextUtils.java2
-rw-r--r--app/src/test/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragmentTest.java6
44 files changed, 85 insertions, 240 deletions
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NoteListWidgetConfigurationActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NoteListWidgetConfigurationActivity.java
index 92f20c4b..01d35902 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NoteListWidgetConfigurationActivity.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/android/activity/NoteListWidgetConfigurationActivity.java
@@ -93,10 +93,6 @@ public class NoteListWidgetConfigurationActivity extends LockedActivity {
} else if (itemFavorites.equals(item)) {
data.setMode(NoteListsWidgetData.MODE_DISPLAY_STARRED);
} else {
- String category = "";
- if (!item.label.equals(getString(R.string.action_uncategorized))) {
- category = item.label;
- }
data.setMode(NoteListsWidgetData.MODE_DISPLAY_CATEGORY);
if (item instanceof CategoryNavigationItem) {
data.setCategoryId(((CategoryNavigationItem) item).categoryId);
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/AccountChooserAdapter.java b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/AccountChooserAdapter.java
index 135e1426..e071d318 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/AccountChooserAdapter.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/AccountChooserAdapter.java
@@ -21,7 +21,9 @@ import it.niedermann.owncloud.notes.R;
import it.niedermann.owncloud.notes.databinding.ItemAccountChooseBinding;
import it.niedermann.owncloud.notes.model.LocalAccount;
-public class AccountChooserAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
+import static it.niedermann.owncloud.notes.android.fragment.AccountChooserAdapter.AccountChooserViewHolder;
+
+public class AccountChooserAdapter extends RecyclerView.Adapter<AccountChooserViewHolder> {
@NonNull
private final List<LocalAccount> localAccounts;
@@ -39,25 +41,24 @@ public class AccountChooserAdapter extends RecyclerView.Adapter<RecyclerView.Vie
@NonNull
@Override
- public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
+ public AccountChooserViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
View v = LayoutInflater.from(parent.getContext()).inflate(R.layout.item_account_choose, parent, false);
return new AccountChooserViewHolder(v);
}
@Override
- public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
+ public void onBindViewHolder(@NonNull AccountChooserViewHolder holder, int position) {
LocalAccount localAccount = localAccounts.get(position);
- AccountChooserViewHolder accountChooserViewHolder = (AccountChooserViewHolder) holder;
- accountChooserViewHolder.getAccountLayout().setOnClickListener((v) -> moveAccountListener.moveToAccount(localAccount));
+ holder.getAccountLayout().setOnClickListener((v) -> moveAccountListener.moveToAccount(localAccount));
Glide
.with(context)
.load(localAccount.getUrl() + "/index.php/avatar/" + Uri.encode(localAccount.getUserName()) + "/64")
.error(R.drawable.ic_account_circle_grey_24dp)
.apply(RequestOptions.circleCropTransform())
- .into(accountChooserViewHolder.getAvatar());
+ .into(holder.getAvatar());
- accountChooserViewHolder.getUsername().setText(localAccount.getAccountName());
+ holder.getUsername().setText(localAccount.getAccountName());
}
@Override
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/MoveAccountDialogFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/MoveAccountDialogFragment.java
index ec0d2ff5..50b56c1c 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/MoveAccountDialogFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/MoveAccountDialogFragment.java
@@ -23,6 +23,8 @@ import it.niedermann.owncloud.notes.databinding.DialogChooseAccountBinding;
import it.niedermann.owncloud.notes.model.LocalAccount;
import it.niedermann.owncloud.notes.persistence.NotesDatabase;
+import static it.niedermann.owncloud.notes.android.fragment.AccountChooserAdapter.AccountChooserViewHolder;
+
public class MoveAccountDialogFragment extends AppCompatDialogFragment implements MoveAccountListener {
private MoveAccountListener moveAccountListener;
@@ -51,7 +53,7 @@ public class MoveAccountDialogFragment extends AppCompatDialogFragment implement
NotesDatabase db = NotesDatabase.getInstance(getActivity());
List<LocalAccount> accountsList = db.getAccounts();
- RecyclerView.Adapter adapter = new AccountChooserAdapter(accountsList, this, requireActivity());
+ RecyclerView.Adapter<AccountChooserViewHolder> adapter = new AccountChooserAdapter(accountsList, this, requireActivity());
binding.accountsList.setAdapter(adapter);
return new BrandedAlertDialogBuilder(requireActivity())
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java
index 76077f27..ff9561e6 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/PreferencesFragment.java
@@ -11,13 +11,11 @@ import androidx.preference.ListPreference;
import androidx.preference.Preference;
import androidx.preference.PreferenceFragmentCompat;
-import it.niedermann.owncloud.notes.BuildConfig;
import it.niedermann.owncloud.notes.R;
import it.niedermann.owncloud.notes.android.DarkModeSetting;
import it.niedermann.owncloud.notes.branding.Branded;
import it.niedermann.owncloud.notes.branding.BrandedSwitchPreference;
import it.niedermann.owncloud.notes.branding.BrandingUtil;
-import it.niedermann.owncloud.notes.persistence.NotesDatabase;
import it.niedermann.owncloud.notes.persistence.SyncWorker;
import it.niedermann.owncloud.notes.util.DeviceCredentialUtil;
import it.niedermann.owncloud.notes.util.Notes;
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragment.java b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragment.java
index be0cafd7..3aa2da79 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragment.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragment.java
@@ -11,6 +11,7 @@ import android.view.MenuItem;
import android.view.View;
import android.view.ViewTreeObserver;
import android.widget.LinearLayout;
+import android.widget.ScrollView;
import androidx.annotation.CallSuper;
import androidx.annotation.ColorInt;
@@ -254,7 +255,10 @@ public abstract class SearchableBaseNoteFragment extends BaseNoteFragment {
int numberLine = layout.getLineForOffset(textUntilFirstOccurrence.length());
if (numberLine >= 0) {
- getScrollView().post(() -> getScrollView().smoothScrollTo(0, layout.getLineTop(numberLine)));
+ ScrollView scrollView = getScrollView();
+ if (scrollView != null) {
+ scrollView.post(() -> scrollView.smoothScrollTo(0, layout.getLineTop(numberLine)));
+ }
}
}
}
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/branding/BrandedSwitchPreference.java b/app/src/main/java/it/niedermann/owncloud/notes/branding/BrandedSwitchPreference.java
index 541d2f4a..a3dd233c 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/branding/BrandedSwitchPreference.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/branding/BrandedSwitchPreference.java
@@ -73,7 +73,7 @@ public class BrandedSwitchPreference extends SwitchPreference implements Branded
}
private void applyBrand() {
- if (switchView != null && SDK_INT >= JELLY_BEAN) {
+ if (switchView != null) {
final int finalMainColor = getSecondaryForegroundColorDependingOnTheme(getContext(), mainColor);
// int trackColor = Color.argb(77, Color.red(finalMainColor), Color.green(finalMainColor), Color.blue(finalMainColor));
DrawableCompat.setTintList(switchView.getThumbDrawable(), new ColorStateList(
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/glide/SingleSignOnStreamFetcher.java b/app/src/main/java/it/niedermann/owncloud/notes/glide/SingleSignOnStreamFetcher.java
index c519e9af..3413552b 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/glide/SingleSignOnStreamFetcher.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/glide/SingleSignOnStreamFetcher.java
@@ -49,7 +49,7 @@ public class SingleSignOnStreamFetcher implements DataFetcher<InputStream> {
@Override
public void loadData(@NonNull Priority priority, @NonNull final DataCallback<? super InputStream> callback) {
- NextcloudAPI client = null;
+ NextcloudAPI client;
try {
SingleSignOnAccount ssoAccount = SingleAccountHelper.getCurrentSingleSignOnAccount(context);
client = INITIALIZED_APIs.get(ssoAccount.name);
@@ -70,7 +70,7 @@ public class SingleSignOnStreamFetcher implements DataFetcher<InputStream> {
didInitialize = true;
}
- NextcloudRequest.Builder requestBuilder = null;
+ NextcloudRequest.Builder requestBuilder;
try {
requestBuilder = new NextcloudRequest.Builder()
.setMethod(METHOD_GET)
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java b/app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java
index 123f345e..d6ab3aa7 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/manageaccounts/ManageAccountsActivity.java
@@ -37,9 +37,7 @@ public class ManageAccountsActivity extends LockedActivity {
List<LocalAccount> localAccounts = db.getAccounts();
- adapter = new ManageAccountAdapter((localAccount) -> {
- SingleAccountHelper.setCurrentAccount(getApplicationContext(), localAccount.getAccountName());
- }, (localAccount) -> {
+ adapter = new ManageAccountAdapter((localAccount) -> SingleAccountHelper.setCurrentAccount(getApplicationContext(), localAccount.getAccountName()), (localAccount) -> {
db.deleteAccount(localAccount);
for (LocalAccount temp : localAccounts) {
if (temp.getId() == localAccount.getId()) {
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/ApiVersion.java b/app/src/main/java/it/niedermann/owncloud/notes/model/ApiVersion.java
index 5b463db1..058dcae8 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/model/ApiVersion.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/model/ApiVersion.java
@@ -11,8 +11,8 @@ public class ApiVersion implements Comparable<ApiVersion> {
private static final Pattern NUMBER_EXTRACTION_PATTERN = Pattern.compile("[0-9]+");
private String originalVersion = "?";
- private int major = 0;
- private int minor = 0;
+ private int major;
+ private int minor;
public ApiVersion(String originalVersion, int major, int minor) {
this(major, minor);
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/NoteListsWidgetData.java b/app/src/main/java/it/niedermann/owncloud/notes/model/NoteListsWidgetData.java
index f0b95dcf..ded1a31f 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/model/NoteListsWidgetData.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/model/NoteListsWidgetData.java
@@ -1,6 +1,7 @@
package it.niedermann.owncloud.notes.model;
import androidx.annotation.IntRange;
+import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
public class NoteListsWidgetData extends AbstractWidgetData {
@@ -30,6 +31,7 @@ public class NoteListsWidgetData extends AbstractWidgetData {
this.categoryId = categoryId;
}
+ @NonNull
@Override
public String toString() {
return "NoteListsWidgetData{" +
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolderWithExcerpt.java b/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolderWithExcerpt.java
index 032e868f..88010fbd 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolderWithExcerpt.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/model/NoteViewHolderWithExcerpt.java
@@ -1,7 +1,6 @@
package it.niedermann.owncloud.notes.model;
import android.content.Context;
-import android.text.TextUtils;
import android.view.View;
import androidx.annotation.NonNull;
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/SectionItemDecoration.java b/app/src/main/java/it/niedermann/owncloud/notes/model/SectionItemDecoration.java
index baf95926..8868f4e8 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/model/SectionItemDecoration.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/model/SectionItemDecoration.java
@@ -7,7 +7,6 @@ import androidx.annotation.CallSuper;
import androidx.annotation.NonNull;
import androidx.annotation.Px;
import androidx.recyclerview.widget.RecyclerView;
-import androidx.recyclerview.widget.StaggeredGridLayoutManager;
public class SectionItemDecoration extends RecyclerView.ItemDecoration {
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java b/app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java
index eccdd7d9..7f8447fd 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/model/SectionViewHolder.java
@@ -1,7 +1,6 @@
package it.niedermann.owncloud.notes.model;
import androidx.recyclerview.widget.RecyclerView;
-import androidx.recyclerview.widget.StaggeredGridLayoutManager;
import it.niedermann.owncloud.notes.databinding.ItemNotesListSectionItemBinding;
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java b/app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java
index 19d0a903..e7d88691 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/persistence/LoadNotesListTask.java
@@ -18,7 +18,6 @@ import it.niedermann.owncloud.notes.model.DBNote;
import it.niedermann.owncloud.notes.model.Item;
import it.niedermann.owncloud.notes.model.SectionItem;
import it.niedermann.owncloud.notes.util.CategorySortingMethod;
-import it.niedermann.owncloud.notes.util.DisplayUtils;
import it.niedermann.owncloud.notes.util.NoteUtil;
public class LoadNotesListTask extends AsyncTask<Void, Void, List<Item>> {
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesDatabase.java b/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesDatabase.java
index 2e1fe0f0..236d566d 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesDatabase.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/persistence/NotesDatabase.java
@@ -21,8 +21,8 @@ import android.util.Log;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.WorkerThread;
-import androidx.preference.PreferenceManager;
import androidx.core.content.ContextCompat;
+import androidx.preference.PreferenceManager;
import com.nextcloud.android.sso.AccountImporter;
import com.nextcloud.android.sso.exceptions.NextcloudFilesAppAccountNotFoundException;
@@ -52,9 +52,9 @@ import it.niedermann.owncloud.notes.model.DBStatus;
import it.niedermann.owncloud.notes.model.ISyncCallback;
import it.niedermann.owncloud.notes.model.LocalAccount;
import it.niedermann.owncloud.notes.model.NavigationAdapter;
-import it.niedermann.owncloud.notes.util.CategorySortingMethod;
import it.niedermann.owncloud.notes.model.NoteListsWidgetData;
import it.niedermann.owncloud.notes.model.SingleNoteWidgetData;
+import it.niedermann.owncloud.notes.util.CategorySortingMethod;
import it.niedermann.owncloud.notes.util.ColorUtil;
import it.niedermann.owncloud.notes.util.NoteUtil;
@@ -693,28 +693,30 @@ public class NotesDatabase extends AbstractNotesDatabase {
new Thread(() -> {
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.N_MR1) {
ShortcutManager shortcutManager = getContext().getApplicationContext().getSystemService(ShortcutManager.class);
- if (!shortcutManager.isRateLimitingActive()) {
- List<ShortcutInfo> newShortcuts = new ArrayList<>();
-
- for (DBNote note : getRecentNotes(accountId)) {
- if (!TextUtils.isEmpty(note.getTitle())) {
- Intent intent = new Intent(getContext().getApplicationContext(), EditNoteActivity.class);
- intent.putExtra(EditNoteActivity.PARAM_NOTE_ID, note.getId());
- intent.setAction(ACTION_SHORTCUT);
-
- newShortcuts.add(new ShortcutInfo.Builder(getContext().getApplicationContext(), note.getId() + "")
- .setShortLabel(note.getTitle() + "")
- .setIcon(Icon.createWithResource(getContext().getApplicationContext(), note.isFavorite() ? R.drawable.ic_star_yellow_24dp : R.drawable.ic_star_grey_ccc_24dp))
- .setIntent(intent)
- .build());
- } else {
- // Prevent crash https://github.com/stefan-niedermann/nextcloud-notes/issues/613
- Log.e(TAG, "shortLabel cannot be empty " + note);
+ if (shortcutManager != null) {
+ if (!shortcutManager.isRateLimitingActive()) {
+ List<ShortcutInfo> newShortcuts = new ArrayList<>();
+
+ for (DBNote note : getRecentNotes(accountId)) {
+ if (!TextUtils.isEmpty(note.getTitle())) {
+ Intent intent = new Intent(getContext().getApplicationContext(), EditNoteActivity.class);
+ intent.putExtra(EditNoteActivity.PARAM_NOTE_ID, note.getId());
+ intent.setAction(ACTION_SHORTCUT);
+
+ newShortcuts.add(new ShortcutInfo.Builder(getContext().getApplicationContext(), note.getId() + "")
+ .setShortLabel(note.getTitle() + "")
+ .setIcon(Icon.createWithResource(getContext().getApplicationContext(), note.isFavorite() ? R.drawable.ic_star_yellow_24dp : R.drawable.ic_star_grey_ccc_24dp))
+ .setIntent(intent)
+ .build());
+ } else {
+ // Prevent crash https://github.com/stefan-niedermann/nextcloud-notes/issues/613
+ Log.e(TAG, "shortLabel cannot be empty " + note);
+ }
}
+ Log.d(TAG, "Update dynamic shortcuts");
+ shortcutManager.removeAllDynamicShortcuts();
+ shortcutManager.addDynamicShortcuts(newShortcuts);
}
- Log.d(TAG, "Update dynamic shortcuts");
- shortcutManager.removeAllDynamicShortcuts();
- shortcutManager.addDynamicShortcuts(newShortcuts);
}
}
}).start();
@@ -728,7 +730,7 @@ public class NotesDatabase extends AbstractNotesDatabase {
* @param url URL to the root of the used Nextcloud instance without trailing slash
* @param username Username of the account
* @param accountName Composed by the username and the host of the URL, separated by @-sign
- * @param capabilities
+ * @param capabilities {@link Capabilities} object containing information about the brand colors, supported API versions, etc...
* @throws SQLiteConstraintException in case accountName already exists
*/
public void addAccount(@NonNull String url, @NonNull String username, @NonNull String accountName, @NonNull Capabilities capabilities) throws SQLiteConstraintException {
@@ -1068,7 +1070,7 @@ public class NotesDatabase extends AbstractNotesDatabase {
null,
null,
null);
- int id = -1;
+ int id;
if (cursor.moveToNext()) {
id = cursor.getInt(0);
} else {
@@ -1102,8 +1104,8 @@ public class NotesDatabase extends AbstractNotesDatabase {
* The sorting method of the category can be used to decide
* to use which sorting method to show the notes for each categories.
*
- * @param accountId The user accountID
- * @param categoryTitle The category title
+ * @param accountId The user accountID
+ * @param categoryTitle The category title
* @return The sorting method in CategorySortingMethod enum format
*/
public CategorySortingMethod getCategoryOrderByTitle(long accountId, String categoryTitle) {
@@ -1112,12 +1114,14 @@ public class NotesDatabase extends AbstractNotesDatabase {
long categoryId = getCategoryIdByTitle(accountId, categoryTitle);
SQLiteDatabase db = getReadableDatabase();
- Cursor cursor = db.query(table_category, new String[]{key_category_sorting_method},
+ int orderIndex;
+ try (Cursor cursor = db.query(table_category, new String[]{key_category_sorting_method},
key_category_id + " = ?", new String[]{String.valueOf(categoryId)},
- null, null, null);
- int orderIndex = 0;
- while (cursor.moveToNext()) {
- orderIndex = cursor.getInt(0);
+ null, null, null)) {
+ orderIndex = 0;
+ while (cursor.moveToNext()) {
+ orderIndex = cursor.getInt(0);
+ }
}
return CategorySortingMethod.getCSM(orderIndex);
@@ -1128,9 +1132,9 @@ public class NotesDatabase extends AbstractNotesDatabase {
* The user can determine use which sorting method to show the notes for a category.
* When the user changes the sorting method, this method should be called.
*
- * @param accountId The user accountID
- * @param categoryTitle The category title
- * @param sortingMethod The sorting method in CategorySortingMethod enum format
+ * @param accountId The user accountID
+ * @param categoryTitle The category title
+ * @param sortingMethod The sorting method in CategorySortingMethod enum format
*/
public void modifyCategoryOrderByTitle(
long accountId, String categoryTitle, CategorySortingMethod sortingMethod) {
@@ -1153,8 +1157,8 @@ public class NotesDatabase extends AbstractNotesDatabase {
* The sorting method of the category can be used to decide
* to use which sorting method to show the notes for each categories.
*
- * @param accountId The user accountID
- * @param category The category
+ * @param accountId The user accountID
+ * @param category The category
* @return The sorting method in CategorySortingMethod enum format
*/
public CategorySortingMethod getCategoryOrder(long accountId, Category category) {
@@ -1162,7 +1166,7 @@ public class NotesDatabase extends AbstractNotesDatabase {
final Context ctx = getContext().getApplicationContext();
final SharedPreferences sp = PreferenceManager.getDefaultSharedPreferences(ctx);
- int orderIndex = 0;
+ int orderIndex;
if (category.category == null) {
if (category.favorite != null && category.favorite) {
@@ -1195,9 +1199,9 @@ public class NotesDatabase extends AbstractNotesDatabase {
* The user can determine use which sorting method to show the notes for a category.
* When the user changes the sorting method, this method should be called.
*
- * @param accountId The user accountID
- * @param category The category to be modified
- * @param sortingMethod The sorting method in CategorySortingMethod enum format
+ * @param accountId The user accountID
+ * @param category The category to be modified
+ * @param sortingMethod The sorting method in CategorySortingMethod enum format
*/
public void modifyCategoryOrder(
long accountId, Category category, CategorySortingMethod sortingMethod) {
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/util/DeviceCredentialUtil.java b/app/src/main/java/it/niedermann/owncloud/notes/util/DeviceCredentialUtil.java
index 483a6662..d79dc9d6 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/util/DeviceCredentialUtil.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/util/DeviceCredentialUtil.java
@@ -20,12 +20,7 @@ public class DeviceCredentialUtil {
KeyguardManager keyguardManager = (KeyguardManager) context.getSystemService(Context.KEYGUARD_SERVICE);
if (keyguardManager != null) {
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
- return keyguardManager.isKeyguardSecure();
- } else {
- Log.i(TAG, "No credentials are available on Android " + Build.VERSION.CODENAME);
- return false;
- }
+ return keyguardManager.isKeyguardSecure();
} else {
Log.e(TAG, "Keyguard manager is null");
return false;
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java b/app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java
index 1a8c4b15..5609aaea 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/util/MarkDownUtil.java
@@ -4,7 +4,6 @@ import android.content.Context;
import android.graphics.Color;
import android.text.Spanned;
import android.text.TextUtils;
-import android.util.Log;
import androidx.annotation.NonNull;
import androidx.core.content.res.ResourcesCompat;
diff --git a/app/src/main/java/it/niedermann/owncloud/notes/util/Notes.java b/app/src/main/java/it/niedermann/owncloud/notes/util/Notes.java
index 5a5e74c5..1b660313 100644
--- a/app/src/main/java/it/niedermann/owncloud/notes/util/Notes.java
+++ b/app/src/main/java/it/niedermann/owncloud/notes/util/Notes.java
@@ -6,7 +6,6 @@ import android.content.SharedPreferences;
import android.content.res.Configuration;
import android.util.Log;
-import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatDelegate;
import androidx.preference.PreferenceManager;
diff --git a/app/src/main/res/drawable/background.png b/app/src/main/res/drawable/background.png
deleted file mode 100644
index 90856f4c..00000000
--- a/app/src/main/res/drawable/background.png
+++ /dev/null
Binary files differ
diff --git a/app/src/main/res/drawable/ic_arrow_drop_down_white_24dp.xml b/app/src/main/res/drawable/ic_arrow_drop_down_white_24dp.xml
deleted file mode 100644
index b9f396da..00000000
--- a/app/src/main/res/drawable/ic_arrow_drop_down_white_24dp.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<vector android:autoMirrored="true" android:height="24dp"
- android:tint="#FFFFFF" android:viewportHeight="24.0"
- android:viewportWidth="24.0" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
- <path android:fillColor="#FFFFFFFF" android:pathData="M7,10l5,5 5,-5z"/>
-</vector>
diff --git a/app/src/main/res/layout/activity_exception.xml b/app/src/main/res/layout/activity_exception.xml
index e1e25491..cff60bf1 100644
--- a/app/src/main/res/layout/activity_exception.xml
+++ b/app/src/main/res/layout/activity_exception.xml
@@ -30,9 +30,7 @@
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:layout_marginEnd="@dimen/spacer_2x"
- android:layout_marginRight="@dimen/spacer_2x"
android:layout_weight="1"
android:background="@color/bg_highlighted"
android:padding="@dimen/spacer_1x"
diff --git a/app/src/main/res/layout/activity_notes_list_view.xml b/app/src/main/res/layout/activity_notes_list_view.xml
index 9dbe0b77..4e8b4f17 100644
--- a/app/src/main/res/layout/activity_notes_list_view.xml
+++ b/app/src/main/res/layout/activity_notes_list_view.xml
@@ -38,10 +38,8 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacer_1x"
- android:layout_marginLeft="@dimen/spacer_1x"
android:layout_marginTop="@dimen/design_appbar_elevation"
android:layout_marginEnd="@dimen/spacer_1x"
- android:layout_marginRight="@dimen/spacer_1x"
android:layout_marginBottom="@dimen/design_appbar_elevation"
app:cardCornerRadius="@dimen/spacer_1x"
app:cardElevation="6dp"
@@ -58,10 +56,8 @@
android:layout_height="wrap_content"
android:background="?attr/selectableItemBackgroundBorderless"
android:paddingStart="@dimen/spacer_1x"
- android:paddingLeft="@dimen/spacer_1x"
android:paddingTop="@dimen/spacer_2x"
android:paddingEnd="@dimen/spacer_1x"
- android:paddingRight="@dimen/spacer_1x"
android:paddingBottom="@dimen/spacer_2x"
android:tint="?attr/colorAccent"
app:srcCompat="@drawable/ic_baseline_menu_24" />
@@ -72,9 +68,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginStart="@dimen/spacer_1x"
- android:layout_marginLeft="@dimen/spacer_1x"
android:layout_marginEnd="@dimen/spacer_1x"
- android:layout_marginRight="@dimen/spacer_1x"
android:layout_weight="1"
android:ellipsize="end"
android:gravity="start"
@@ -83,14 +77,14 @@
tools:text="@string/search_in_all" />
<androidx.appcompat.widget.AppCompatImageView
- android:tint="?attr/colorAccent"
android:id="@+id/sorting_method"
android:layout_width="?attr/actionBarSize"
android:layout_height="?attr/actionBarSize"
- android:contentDescription="@string/action_sorting_method"
- android:padding="@dimen/spacer_2x"
android:layout_gravity="center_vertical|end"
android:background="?attr/selectableItemBackgroundBorderless"
+ android:contentDescription="@string/action_sorting_method"
+ android:padding="@dimen/spacer_2x"
+ android:tint="?attr/colorAccent"
app:srcCompat="@drawable/alphabetical_asc" />
<androidx.appcompat.widget.AppCompatImageView
@@ -100,7 +94,9 @@
android:layout_gravity="center_vertical|end"
android:background="?attr/selectableItemBackgroundBorderless"
android:padding="12dp"
- app:srcCompat="@drawable/ic_account_circle_grey_24dp" />
+ android:tooltipText="@string/manage_accounts"
+ app:srcCompat="@drawable/ic_account_circle_grey_24dp"
+ tools:targetApi="o" />
</LinearLayout>
</com.google.android.material.card.MaterialCardView>
diff --git a/app/src/main/res/layout/dialog_account_switcher.xml b/app/src/main/res/layout/dialog_account_switcher.xml
index f5260947..cccdf1c9 100644
--- a/app/src/main/res/layout/dialog_account_switcher.xml
+++ b/app/src/main/res/layout/dialog_account_switcher.xml
@@ -29,9 +29,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:layout_marginEnd="@dimen/spacer_2x"
- android:layout_marginRight="@dimen/spacer_2x"
android:layout_weight="1"
android:ellipsize="middle"
android:singleLine="true"
@@ -72,10 +70,8 @@
android:background="?attr/selectableItemBackground"
android:orientation="horizontal"
android:paddingStart="@dimen/spacer_3x"
- android:paddingLeft="@dimen/spacer_3x"
android:paddingTop="@dimen/spacer_1x"
android:paddingEnd="@dimen/spacer_3x"
- android:paddingRight="@dimen/spacer_3x"
android:paddingBottom="@dimen/spacer_1x">
<androidx.appcompat.widget.AppCompatImageView
@@ -91,7 +87,6 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:ellipsize="middle"
android:singleLine="true"
android:text="@string/add_account"
@@ -108,10 +103,8 @@
android:background="?attr/selectableItemBackground"
android:orientation="horizontal"
android:paddingStart="@dimen/spacer_3x"
- android:paddingLeft="@dimen/spacer_3x"
android:paddingTop="@dimen/spacer_1x"
android:paddingEnd="@dimen/spacer_3x"
- android:paddingRight="@dimen/spacer_3x"
android:paddingBottom="@dimen/spacer_1x">
<androidx.appcompat.widget.AppCompatImageView
@@ -127,7 +120,6 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:ellipsize="middle"
android:singleLine="true"
android:text="@string/manage_accounts"
diff --git a/app/src/main/res/layout/drawer_layout.xml b/app/src/main/res/layout/drawer_layout.xml
index ec445d1c..f4ec2daf 100644
--- a/app/src/main/res/layout/drawer_layout.xml
+++ b/app/src/main/res/layout/drawer_layout.xml
@@ -5,7 +5,7 @@
android:id="@+id/drawerLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:openDrawer="left">
+ tools:openDrawer="start">
<include
android:id="@+id/activity_notes_list_view"
@@ -51,7 +51,6 @@
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toEndOf="@id/logo"
- android:layout_toRightOf="@id/logo"
android:ellipsize="end"
android:fontFamily="sans-serif-light"
android:gravity="center_vertical"
diff --git a/app/src/main/res/layout/item_account.xml b/app/src/main/res/layout/item_account.xml
deleted file mode 100644
index 18c6f52e..00000000
--- a/app/src/main/res/layout/item_account.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- xmlns:tools="http://schemas.android.com/tools"
- xmlns:app="http://schemas.android.com/apk/res-auto"
- android:background="?attr/selectableItemBackground"
- android:paddingLeft="6dp"
- android:paddingStart="6dp"
- android:paddingRight="@dimen/spacer_1x"
- android:paddingEnd="@dimen/spacer_1x">
-
- <androidx.appcompat.widget.AppCompatImageView
- android:id="@+id/accountItemAvatar"
- android:layout_width="44dp"
- android:layout_height="44dp"
- android:padding="10dp"
- android:scaleType="center"
- android:focusable="false"
- app:srcCompat="@drawable/ic_account_circle_grey_24dp"
- android:contentDescription="@null" />
-
- <TextView
- android:id="@+id/accountItemLabel"
- android:layout_height="wrap_content"
- android:layout_width="wrap_content"
- android:layout_centerVertical="true"
- android:layout_marginLeft="64dp"
- android:layout_marginStart="64dp"
- android:layout_marginRight="64dp"
- android:layout_marginEnd="64dp"
- android:ellipsize="middle"
- android:singleLine="true"
- android:textColor="?android:textColorPrimary"
- tools:hint="@tools:sample/full_names"/>
-
- <androidx.appcompat.widget.AppCompatImageView
- android:id="@+id/delete"
- android:layout_width="44dp"
- android:layout_height="44dp"
- android:padding="10dp"
- android:scaleType="center"
- android:focusable="false"
- android:layout_alignParentEnd="true"
- android:layout_alignParentRight="true"
- app:srcCompat="@drawable/ic_delete_grey600_24dp"
- android:contentDescription="@string/menu_delete" />
-
-</RelativeLayout> \ No newline at end of file
diff --git a/app/src/main/res/layout/item_account_choose.xml b/app/src/main/res/layout/item_account_choose.xml
index 33abe594..b9a88984 100644
--- a/app/src/main/res/layout/item_account_choose.xml
+++ b/app/src/main/res/layout/item_account_choose.xml
@@ -11,8 +11,7 @@
<FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- android:layout_marginEnd="@dimen/spacer_1hx"
- android:layout_marginRight="@dimen/spacer_1hx">
+ android:layout_marginEnd="@dimen/spacer_1hx">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/accountItemAvatar"
@@ -39,9 +38,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:layout_marginEnd="@dimen/spacer_2x"
- android:layout_marginRight="@dimen/spacer_2x"
android:layout_weight="1"
android:ellipsize="middle"
android:singleLine="true"
diff --git a/app/src/main/res/layout/item_category.xml b/app/src/main/res/layout/item_category.xml
index b23a6e3f..494f4021 100644
--- a/app/src/main/res/layout/item_category.xml
+++ b/app/src/main/res/layout/item_category.xml
@@ -14,7 +14,6 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/spacer_2x"
- android:layout_marginRight="@dimen/spacer_2x"
android:contentDescription="@null"
android:focusable="false"
android:scaleType="center"
@@ -37,7 +36,6 @@
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|end"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:textColor="@color/fg_default"
tools:text="23" />
</LinearLayout> \ No newline at end of file
diff --git a/app/src/main/res/layout/item_navigation.xml b/app/src/main/res/layout/item_navigation.xml
index e1dc16e8..9ab8e6d7 100644
--- a/app/src/main/res/layout/item_navigation.xml
+++ b/app/src/main/res/layout/item_navigation.xml
@@ -5,9 +5,7 @@
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:paddingStart="@dimen/spacer_1x"
- android:paddingLeft="@dimen/spacer_1x"
- android:paddingEnd="@dimen/spacer_1x"
- android:paddingRight="@dimen/spacer_1x">
+ android:paddingEnd="@dimen/spacer_1x">
<androidx.appcompat.widget.AppCompatImageView
android:id="@+id/navigationItemIcon"
@@ -23,7 +21,6 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacer_1x"
- android:layout_marginLeft="@dimen/spacer_1x"
android:layout_weight="1"
android:ellipsize="end"
android:lines="1"
diff --git a/app/src/main/res/layout/item_notes_list_note_item_grid.xml b/app/src/main/res/layout/item_notes_list_note_item_grid.xml
index 9f66f71e..95a19ec9 100644
--- a/app/src/main/res/layout/item_notes_list_note_item_grid.xml
+++ b/app/src/main/res/layout/item_notes_list_note_item_grid.xml
@@ -20,10 +20,8 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:layout_marginTop="@dimen/spacer_2x"
android:layout_marginEnd="@dimen/spacer_2x"
- android:layout_marginRight="@dimen/spacer_2x"
android:layout_marginBottom="@dimen/spacer_1x"
android:hyphenationFrequency="full"
android:textAppearance="?attr/textAppearanceHeadline5"
@@ -38,9 +36,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:layout_marginEnd="@dimen/spacer_2x"
- android:layout_marginRight="@dimen/spacer_2x"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/fg_default"
tools:maxLength="200"
@@ -64,9 +60,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:layout_marginEnd="0dp"
- android:layout_marginRight="0dp"
android:ellipsize="middle"
android:textColor="?android:textColorPrimary"
android:textSize="@dimen/secondary_font_size"
@@ -97,7 +91,6 @@
android:layout_gravity="center_vertical|end"
android:layout_marginTop="12dp"
android:layout_marginEnd="4dp"
- android:layout_marginRight="4dp"
android:baseline="14dp"
app:srcCompat="@drawable/ic_sync_blue_18dp" />
</FrameLayout>
diff --git a/app/src/main/res/layout/item_notes_list_note_item_grid_only_title.xml b/app/src/main/res/layout/item_notes_list_note_item_grid_only_title.xml
index 869a4f70..441fe6b9 100644
--- a/app/src/main/res/layout/item_notes_list_note_item_grid_only_title.xml
+++ b/app/src/main/res/layout/item_notes_list_note_item_grid_only_title.xml
@@ -20,10 +20,8 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacer_2x"
- android:layout_marginLeft="@dimen/spacer_2x"
android:layout_marginTop="@dimen/spacer_2x"
android:layout_marginEnd="@dimen/spacer_2x"
- android:layout_marginRight="@dimen/spacer_2x"
android:layout_marginBottom="@dimen/spacer_1x"
android:layout_weight="1"
android:hyphenationFrequency="full"
@@ -53,7 +51,6 @@
android:layout_gravity="center_vertical|end"
android:layout_marginTop="12dp"
android:layout_marginEnd="4dp"
- android:layout_marginRight="4dp"
android:baseline="14dp"
app:srcCompat="@drawable/ic_sync_blue_18dp" />
</FrameLayout>
diff --git a/app/src/main/res/layout/item_notes_list_note_item_with_excerpt.xml b/app/src/main/res/layout/item_notes_list_note_item_with_excerpt.xml
index fe4d8b0b..074d7b78 100644
--- a/app/src/main/res/layout/item_notes_list_note_item_with_excerpt.xml
+++ b/app/src/main/res/layout/item_notes_list_note_item_with_excerpt.xml
@@ -13,7 +13,6 @@
android:layout_height="32dp"
android:layout_gravity="center_vertical"
android:layout_marginStart="@dimen/button_padding"
- android:layout_marginLeft="@dimen/button_padding"
android:contentDescription="@string/menu_favorite"
app:srcCompat="@drawable/ic_star_white_24dp" />
@@ -23,7 +22,6 @@
android:layout_height="32dp"
android:layout_gravity="end|center_vertical"
android:layout_marginEnd="@dimen/button_padding"
- android:layout_marginRight="@dimen/button_padding"
android:contentDescription="@string/menu_delete"
app:srcCompat="@drawable/ic_delete_white_32dp" />
@@ -54,7 +52,6 @@
android:layout_gravity="center_vertical|end"
android:layout_marginTop="12dp"
android:layout_marginEnd="4dp"
- android:layout_marginRight="4dp"
android:baseline="14dp"
app:srcCompat="@drawable/ic_sync_blue_18dp" />
</FrameLayout>
@@ -66,10 +63,8 @@
android:layout_weight="1"
android:orientation="vertical"
android:paddingStart="0dp"
- android:paddingLeft="0dp"
android:paddingTop="@dimen/spacer_2x"
android:paddingEnd="@dimen/spacer_2x"
- android:paddingRight="@dimen/spacer_2x"
android:paddingBottom="@dimen/spacer_2x">
<LinearLayout
@@ -110,12 +105,11 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacer_1x"
- android:layout_marginLeft="@dimen/spacer_1x"
android:background="@drawable/border"
android:maxLines="1"
- android:paddingLeft="@dimen/spacer_1x"
+ android:paddingStart="@dimen/spacer_1x"
android:paddingTop="1dp"
- android:paddingRight="@dimen/spacer_1x"
+ android:paddingEnd="@dimen/spacer_1x"
android:paddingBottom="1dp"
android:singleLine="true"
android:textColor="?android:textColorPrimary"
diff --git a/app/src/main/res/layout/item_notes_list_note_item_without_excerpt.xml b/app/src/main/res/layout/item_notes_list_note_item_without_excerpt.xml
index cf61752d..d3bd8107 100644
--- a/app/src/main/res/layout/item_notes_list_note_item_without_excerpt.xml
+++ b/app/src/main/res/layout/item_notes_list_note_item_without_excerpt.xml
@@ -13,7 +13,6 @@
android:layout_height="32dp"
android:layout_gravity="center_vertical"
android:layout_marginStart="@dimen/button_padding"
- android:layout_marginLeft="@dimen/button_padding"
android:contentDescription="@string/menu_favorite"
app:srcCompat="@drawable/ic_star_white_24dp" />
@@ -23,7 +22,6 @@
android:layout_height="32dp"
android:layout_gravity="end|center_vertical"
android:layout_marginEnd="@dimen/button_padding"
- android:layout_marginRight="@dimen/button_padding"
android:contentDescription="@string/menu_delete"
app:srcCompat="@drawable/ic_delete_white_32dp" />
@@ -55,7 +53,6 @@
android:layout_gravity="center_vertical|end"
android:layout_marginTop="12dp"
android:layout_marginEnd="4dp"
- android:layout_marginRight="4dp"
android:baseline="14dp"
app:srcCompat="@drawable/ic_sync_blue_18dp" />
</FrameLayout>
@@ -80,14 +77,12 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/spacer_1x"
- android:layout_marginLeft="@dimen/spacer_1x"
android:layout_marginTop="1dp"
android:layout_marginEnd="@dimen/spacer_2x"
- android:layout_marginRight="@dimen/spacer_2x"
android:background="@drawable/border"
android:maxLines="1"
- android:paddingLeft="@dimen/spacer_1x"
- android:paddingRight="@dimen/spacer_1x"
+ android:paddingStart="@dimen/spacer_1x"
+ android:paddingEnd="@dimen/spacer_1x"
android:paddingBottom="1dp"
android:singleLine="true"
android:textColor="?android:textColorPrimary"
diff --git a/app/src/main/res/layout/item_notes_list_section_item.xml b/app/src/main/res/layout/item_notes_list_section_item.xml
index 3f29866a..fd7517bd 100644
--- a/app/src/main/res/layout/item_notes_list_section_item.xml
+++ b/app/src/main/res/layout/item_notes_list_section_item.xml
@@ -5,10 +5,8 @@
android:layout_height="wrap_content"
android:layout_alignWithParentIfMissing="true"
android:layout_alignParentStart="true"
- android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_alignParentEnd="false"
- android:layout_alignParentRight="true"
android:ellipsize="end"
android:gravity="center_vertical"
android:hint="@string/listview_updated_yesterday"
diff --git a/app/src/main/res/layout/item_preference_category.xml b/app/src/main/res/layout/item_preference_category.xml
index 4580a438..cf4bef57 100644
--- a/app/src/main/res/layout/item_preference_category.xml
+++ b/app/src/main/res/layout/item_preference_category.xml
@@ -5,8 +5,6 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingStart="56dp"
- android:paddingLeft="56dp"
android:paddingTop="@dimen/spacer_3x"
android:paddingEnd="0dp"
- android:paddingRight="0dp"
tools:text="@tools:sample/lorem" />
diff --git a/app/src/main/res/layout/item_tip.xml b/app/src/main/res/layout/item_tip.xml
index 4698e8c3..fc49ed05 100644
--- a/app/src/main/res/layout/item_tip.xml
+++ b/app/src/main/res/layout/item_tip.xml
@@ -9,7 +9,6 @@
android:gravity="start|center"
android:padding="@dimen/spacer_2x"
android:textColor="?android:textColorPrimary"
- app:drawableLeftCompat="@drawable/ic_lightbulb_outline_grey600_24dp"
app:drawableStartCompat="@drawable/ic_lightbulb_outline_grey600_24dp"
tools:maxLength="200"
tools:text="@tools:sample/lorem/random" /> \ No newline at end of file
diff --git a/app/src/main/res/layout/widget_entry.xml b/app/src/main/res/layout/widget_entry.xml
index 029e2f39..81687c72 100644
--- a/app/src/main/res/layout/widget_entry.xml
+++ b/app/src/main/res/layout/widget_entry.xml
@@ -7,10 +7,8 @@
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingStart="@dimen/spacer_1hx"
- android:paddingLeft="@dimen/spacer_1hx"
android:paddingTop="@dimen/spacer_1x"
android:paddingEnd="@dimen/spacer_1hx"
- android:paddingRight="@dimen/spacer_1hx"
android:paddingBottom="@dimen/spacer_1x">
<ImageView
@@ -21,9 +19,7 @@
android:contentDescription="@string/widget_entry_fav_contentDescription"
android:foregroundGravity="center_vertical"
android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingLeft="@dimen/widget_note_list_inner_padding"
android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:paddingRight="@dimen/widget_note_list_outer_padding"
app:srcCompat="@drawable/ic_star_yellow_24dp" />
<TextView
@@ -35,9 +31,7 @@
android:ellipsize="end"
android:lines="1"
android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingLeft="@dimen/widget_note_list_inner_padding"
android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:paddingRight="@dimen/widget_note_list_outer_padding"
android:textColor="@color/widget_fg_default"
tools:text="@tools:sample/lorem/random" />
diff --git a/app/src/main/res/layout/widget_entry_dark.xml b/app/src/main/res/layout/widget_entry_dark.xml
index 84079185..30b12171 100644
--- a/app/src/main/res/layout/widget_entry_dark.xml
+++ b/app/src/main/res/layout/widget_entry_dark.xml
@@ -7,10 +7,8 @@
android:layout_height="wrap_content"
android:orientation="horizontal"
android:paddingStart="@dimen/spacer_1hx"
- android:paddingLeft="@dimen/spacer_1hx"
android:paddingTop="@dimen/spacer_1x"
android:paddingEnd="@dimen/spacer_1hx"
- android:paddingRight="@dimen/spacer_1hx"
android:paddingBottom="@dimen/spacer_1x"
tools:background="@color/widget_background_dark_theme">
@@ -22,9 +20,7 @@
android:contentDescription="@string/widget_entry_fav_contentDescription"
android:foregroundGravity="center_vertical"
android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingLeft="@dimen/widget_note_list_inner_padding"
android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:paddingRight="@dimen/widget_note_list_outer_padding"
app:srcCompat="@drawable/ic_star_yellow_24dp" />
<TextView
@@ -36,9 +32,7 @@
android:ellipsize="end"
android:lines="1"
android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingLeft="@dimen/widget_note_list_inner_padding"
android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:paddingRight="@dimen/widget_note_list_outer_padding"
android:textColor="@color/fg_default_dark_theme"
tools:text="@tools:sample/lorem/random" />
diff --git a/app/src/main/res/layout/widget_note_list.xml b/app/src/main/res/layout/widget_note_list.xml
index 6f13212f..3ac7d474 100644
--- a/app/src/main/res/layout/widget_note_list.xml
+++ b/app/src/main/res/layout/widget_note_list.xml
@@ -19,13 +19,10 @@
android:layout_width="@dimen/widget_note_list_icon_width"
android:layout_height="match_parent"
android:layout_alignParentStart="true"
- android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:contentDescription="@string/widget_app_launcher_contentDescription"
android:paddingStart="@dimen/widget_note_list_outer_padding"
- android:paddingLeft="@dimen/widget_note_list_outer_padding"
android:paddingEnd="@dimen/widget_note_list_inner_padding"
- android:paddingRight="@dimen/widget_note_list_inner_padding"
android:scaleX="2"
android:scaleY="2"
android:src="@drawable/ic_launcher_foreground" />
@@ -35,15 +32,11 @@
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_toStartOf="@id/widget_note_list_create_icon"
- android:layout_toLeftOf="@id/widget_note_list_create_icon"
android:layout_toEndOf="@id/widget_note_header_icon"
- android:layout_toRightOf="@id/widget_note_header_icon"
android:ellipsize="middle"
android:gravity="center_vertical"
android:paddingStart="@dimen/widget_note_list_hdr_padding"
- android:paddingLeft="@dimen/widget_note_list_hdr_padding"
android:paddingEnd="@dimen/widget_note_list_hdr_padding"
- android:paddingRight="@dimen/widget_note_list_hdr_padding"
android:singleLine="true"
android:textColor="@color/widget_fg_contrast"
android:textSize="18sp"
@@ -54,12 +47,9 @@
android:layout_width="@dimen/widget_note_list_icon_width"
android:layout_height="match_parent"
android:layout_alignParentEnd="true"
- android:layout_alignParentRight="true"
android:contentDescription="@string/widget_create_note"
android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingLeft="@dimen/widget_note_list_inner_padding"
android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:paddingRight="@dimen/widget_note_list_outer_padding"
android:src="@drawable/ic_add_white_24dp" />
</RelativeLayout>
diff --git a/app/src/main/res/layout/widget_note_list_dark.xml b/app/src/main/res/layout/widget_note_list_dark.xml
index 048a1f70..79f81b05 100644
--- a/app/src/main/res/layout/widget_note_list_dark.xml
+++ b/app/src/main/res/layout/widget_note_list_dark.xml
@@ -20,13 +20,10 @@
android:layout_width="@dimen/widget_note_list_icon_width"
android:layout_height="match_parent"
android:layout_alignParentStart="true"
- android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:contentDescription="@string/widget_app_launcher_contentDescription"
android:paddingStart="@dimen/widget_note_list_outer_padding"
- android:paddingLeft="@dimen/widget_note_list_outer_padding"
android:paddingEnd="@dimen/widget_note_list_inner_padding"
- android:paddingRight="@dimen/widget_note_list_inner_padding"
android:scaleX="2"
android:scaleY="2"
android:src="@drawable/ic_launcher_foreground" />
@@ -36,15 +33,11 @@
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_toStartOf="@id/widget_note_list_create_icon_dark"
- android:layout_toLeftOf="@id/widget_note_list_create_icon_dark"
android:layout_toEndOf="@id/widget_note_header_icon_dark"
- android:layout_toRightOf="@id/widget_note_header_icon_dark"
android:ellipsize="middle"
android:gravity="center_vertical"
android:paddingStart="@dimen/widget_note_list_outer_padding"
- android:paddingLeft="@dimen/widget_note_list_outer_padding"
android:paddingEnd="@dimen/widget_note_list_inner_padding"
- android:paddingRight="@dimen/widget_note_list_inner_padding"
android:singleLine="true"
android:textColor="@color/widget_fg_contrast"
android:textSize="18sp"
@@ -55,12 +48,9 @@
android:layout_width="@dimen/widget_note_list_icon_width"
android:layout_height="match_parent"
android:layout_alignParentEnd="true"
- android:layout_alignParentRight="true"
android:contentDescription="@string/widget_create_note"
android:paddingStart="@dimen/widget_note_list_inner_padding"
- android:paddingLeft="@dimen/widget_note_list_inner_padding"
android:paddingEnd="@dimen/widget_note_list_outer_padding"
- android:paddingRight="@dimen/widget_note_list_outer_padding"
android:src="@drawable/ic_add_white_24dp" />
</RelativeLayout>
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index c9c94fde..8f6847ea 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -22,9 +22,6 @@
<color name="icon_color_default">#757575</color>
- <color name="bg_search_primary">@color/defaultBrand</color>
- <color name="bg_search_secondary">#eee</color>
-
<color name="widget_background">#dfffffff</color>
<color name="widget_fg_default">#000000</color>
<color name="widget_fg_contrast">#ffffff</color>
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 3ffa7d38..d2eccead 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -29,7 +29,6 @@
<dimen name="widget_single_note_padding">10dp</dimen>
<dimen name="widget_note_list_hdr_padding">2dp</dimen>
- <dimen name="widget_note_list_padding">@dimen/spacer_1hx</dimen>
<dimen name="widget_note_list_header_height">36dp</dimen>
<dimen name="widget_note_list_icon_width">30dp</dimen>
@@ -38,6 +37,4 @@
<dimen name="widget_note_list_fav_icon_width">26dp</dimen>
<dimen name="widget_note_list_fav_icon_height">20dp</dimen>
- <dimen name="header_padding">16dp</dimen>
- <dimen name="avatar_size">64dp</dimen>
</resources>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index ef9e47ff..3bef2020 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -14,15 +14,12 @@
<string name="simple_edit">Edit</string>
<string name="action_edit_save">Save</string>
<string name="simple_about">About</string>
- <string name="simple_accounts">Accounts</string>
<string name="simple_bold">Bold</string>
<string name="simple_link">Link</string>
<string name="simple_italic">Italic</string>
<string name="action_note_deleted">Deleted %1$s</string>
<string name="action_note_restored">Restored %1$s</string>
<string name="action_undo">Undo</string>
- <string name="action_drawer_open">open navigation</string>
- <string name="action_drawer_close">close navigation</string>
<string name="action_uncategorized">Uncategorized</string>
<string name="menu_delete">Delete</string>
<string name="menu_change_category">Category</string>
@@ -58,9 +55,6 @@
<string name="error_synchronization">Synchronization failed</string>
<string name="error_json">Is the Notes app activated on the server?</string>
<string name="error_no_network">No network connection</string>
- <string name="error_files_app">Do you have installed the files app?</string>
- <string name="error_token_mismatch">Cannot connect to the files app.</string>
- <string name="error_insufficient_storage">Your server storage is full.</string>
<string name="error_unknown">An unknown error has occurred.</string>
<!-- Snackbar Actions -->
@@ -161,7 +155,6 @@
<string name="could_not_load_preview_two_digit_numbered_list">Could not load preview. Please check whether there is a two-digit numbered list item without content.</string>
<string name="simple_more">More</string>
<string name="simple_move">Move</string>
- <string name="error_files_app_version_too_old">Is your files app version up to date?</string>
<string name="checkbox_could_not_be_toggled">Checkbox could not be toggled.</string>
<string name="bulk_notes_deleted">Deleted %1$d notes</string>
<string name="bulk_notes_restored">Restored %1$d notes</string>
diff --git a/app/src/test/java/android/text/TextUtils.java b/app/src/test/java/android/text/TextUtils.java
index d57433ae..73adde20 100644
--- a/app/src/test/java/android/text/TextUtils.java
+++ b/app/src/test/java/android/text/TextUtils.java
@@ -15,7 +15,7 @@ public class TextUtils {
* calling object.toString(). If tokens is null, a NullPointerException will be thrown. If
* tokens is empty, an empty string will be returned.
*/
- public static String join(CharSequence delimiter, Iterable tokens) {
+ public static String join(CharSequence delimiter, Iterable<?> tokens) {
final Iterator<?> it = tokens.iterator();
if (!it.hasNext()) {
return "";
diff --git a/app/src/test/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragmentTest.java b/app/src/test/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragmentTest.java
index f63923b6..06251867 100644
--- a/app/src/test/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragmentTest.java
+++ b/app/src/test/java/it/niedermann/owncloud/notes/android/fragment/SearchableBaseNoteFragmentTest.java
@@ -1,14 +1,12 @@
package it.niedermann.owncloud.notes.android.fragment;
-import android.util.Log;
-
import org.junit.Test;
import java.lang.reflect.Method;
import java.util.Arrays;
-import java.util.Random;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.fail;
public class SearchableBaseNoteFragmentTest {