Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Unverified Commit e5376437 authored by Niedermann IT-Dienstleistungen's avatar Niedermann IT-Dienstleistungen Committed by GitHub
Browse files

Merge branch 'master' into refresh-preview

parents 2ffeb6c9 14887043
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -26,8 +26,10 @@ android {
dependencies {
    implementation project(':cert4android')

    implementation 'com.yydcdut:rxmarkdown:0.1.1-beta'

    implementation 'io.reactivex:rxandroid:1.2.0'
    implementation 'io.reactivex:rxjava:1.1.5'
    implementation 'com.yydcdut:markdown-processor:0.1.3'
    implementation 'com.yydcdut:rxmarkdown-wrapper:0.1.3'

    implementation 'com.jakewharton:butterknife:8.8.1'
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
+9 −0
Original line number Diff line number Diff line
@@ -2,11 +2,14 @@ package it.niedermann.owncloud.notes.android.activity;

import android.app.SearchManager;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.res.Configuration;
import android.graphics.Canvas;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.os.Handler;
import android.preference.PreferenceManager;
import android.support.annotation.Nullable;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
@@ -331,10 +334,12 @@ public class NotesListViewActivity extends AppCompatActivity implements ItemAdap
    }

    private void setupNavigationMenu() {
        final NavigationAdapter.NavigationItem itemTrashbin = new NavigationAdapter.NavigationItem("trashbin", getString(R.string.action_trashbin), null, R.drawable.ic_delete_grey600_24dp);
        final NavigationAdapter.NavigationItem itemSettings = new NavigationAdapter.NavigationItem("settings", getString(R.string.action_settings), null, R.drawable.ic_settings_grey600_24dp);
        final NavigationAdapter.NavigationItem itemAbout = new NavigationAdapter.NavigationItem("about", getString(R.string.simple_about), null, R.drawable.ic_info_outline_grey600_24dp);

        ArrayList<NavigationAdapter.NavigationItem> itemsMenu = new ArrayList<>();
        itemsMenu.add(itemTrashbin);
        itemsMenu.add(itemSettings);
        itemsMenu.add(itemAbout);

@@ -347,6 +352,10 @@ public class NotesListViewActivity extends AppCompatActivity implements ItemAdap
                } else if (item == itemAbout) {
                    Intent aboutIntent = new Intent(getApplicationContext(), AboutActivity.class);
                    startActivityForResult(aboutIntent, about);
                } else if (item == itemTrashbin) {
                    SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
                    String url = preferences.getString(SettingsActivity.SETTINGS_URL, SettingsActivity.DEFAULT_SETTINGS);
                    startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url + "index.php/apps/files/?dir=/&view=trashbin")));
                }
            }

+2 −2
Original line number Diff line number Diff line
@@ -14,9 +14,9 @@ import android.view.ViewGroup;
import android.view.WindowManager;
import android.widget.TextView;

import com.yydcdut.markdown.syntax.edit.EditFactory;
import com.yydcdut.rxmarkdown.RxMDEditText;
import com.yydcdut.rxmarkdown.RxMarkdown;
import com.yydcdut.rxmarkdown.syntax.edit.EditFactory;

import butterknife.BindView;
import butterknife.ButterKnife;
@@ -91,7 +91,7 @@ public class NoteEditFragment extends BaseNoteFragment {
        editContent.setEnabled(true);

        RxMarkdown.live(editContent)
                .config(MarkDownUtil.getMarkDownConfiguration(getActivity().getApplicationContext()))
                .config(MarkDownUtil.getMarkDownConfiguration(getActivity().getApplicationContext()).build())
                .factory(EditFactory.create())
                .intoObservable()
                .subscribe(new Subscriber<CharSequence>() {
+19 −15
Original line number Diff line number Diff line
@@ -12,9 +12,11 @@ import android.view.ViewGroup;
import android.widget.TextView;
import android.widget.Toast;

import com.yydcdut.markdown.callback.OnTodoClickCallback;
import com.yydcdut.markdown.syntax.text.TextFactory;
import com.yydcdut.rxmarkdown.RxMDConfiguration;
import com.yydcdut.rxmarkdown.RxMDTextView;
import com.yydcdut.rxmarkdown.RxMarkdown;
import com.yydcdut.rxmarkdown.syntax.text.TextFactory;

import butterknife.BindView;
import butterknife.ButterKnife;
@@ -64,22 +66,24 @@ public class NotePreviewFragment extends BaseNoteFragment {
        ButterKnife.bind(this, getView());

        String content = note.getContent();
        /*
         * The following replaceAll adds links ()[] to all URLs that are not in an existing link.
         * This regular expression consists of three parts:
         * 1. (?<![(])
         *    negative look-behind: no opening bracket "(" directly before the URL
         *    This prevents replacement in target part of Markdown link: [](URL)
         * 2. (https?://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|])
         *    URL pattern: matches all addresses beginning with http:// or https://
         * 3. (?![^\\[]*\\])
         *    negative look-ahead: no closing bracket "]" after the URL (otherwise there have to be an opening bracket "[" before)
         *    This prevents replacement in label part of Markdown link: [...URL...]()
         */
        content = content.replaceAll("(?<![(])(https?://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|])(?![^\\[]*\\])", "[$1]($1)");

        RxMarkdown.with(content, getActivity())
                .config(MarkDownUtil.getMarkDownConfiguration(getActivity().getApplicationContext()))
                .config(
                    MarkDownUtil.getMarkDownConfiguration(getActivity().getApplicationContext())
                        /*.setOnTodoClickCallback(new OnTodoClickCallback() {
                                @Override
                                public CharSequence onTodoClicked(View view, String line, int lineNumber) {
                                String[] lines = TextUtils.split(note.getContent(), "\\r?\\n");
                                if(lines.length >= lineNumber) {
                                    lines[lineNumber] = line;
                                }
                                noteContent.setText(TextUtils.join("\n", lines), TextView.BufferType.SPANNABLE);
                                saveNote(null);
                                return line;
                            }
                        }
                    )*/.build()
                )
                .factory(TextFactory.create())
                .intoObservable()
                .subscribeOn(Schedulers.computation())
+3 −3
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@ import android.content.Context;
import android.support.v4.content.res.ResourcesCompat;

import com.yydcdut.rxmarkdown.RxMDConfiguration;
import com.yydcdut.rxmarkdown.RxMDConfiguration.Builder;

import it.niedermann.owncloud.notes.R;

@@ -19,7 +20,7 @@ public class MarkDownUtil {
     * @param context Context
     * @return RxMDConfiguration
     */
    public static RxMDConfiguration getMarkDownConfiguration(Context context) {
    public static Builder getMarkDownConfiguration(Context context) {
        return new RxMDConfiguration.Builder(context)
                .setUnOrderListColor(ResourcesCompat.getColor(context.getResources(), R.color.fg_default, null))
                .setHeader2RelativeSize(1.35f)
@@ -28,7 +29,6 @@ public class MarkDownUtil {
                .setHeader5RelativeSize(1.1f)
                .setHeader6RelativeSize(1.05f)
                .setHorizontalRulesHeight(2)
                .setLinkColor(ResourcesCompat.getColor(context.getResources(), R.color.primary, null))
                .build();
                .setLinkFontColor(ResourcesCompat.getColor(context.getResources(), R.color.primary, null));
    }
}
Loading