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

Commit a3945fd2 authored by Mohit Mali's avatar Mohit Mali Committed by Fahim Salam Chowdhury
Browse files

Updated about content

parent 3bd73ad1
Loading
Loading
Loading
Loading
Loading
+13 −59
Original line number Diff line number Diff line
# Nextcloud Notes for Android
An android client for [Nextcloud Notes App](https://github.com/nextcloud/notes/).
# Notes
An android client for [Nextcloud Notes App](https://github.com/nextcloud/notes/)  
Notes is forked from [Nextcloud Notes](https://github.com/stefan-niedermann/nextcloud-notes)

[![Android CI](https://github.com/stefan-niedermann/nextcloud-notes/workflows/Android%20CI/badge.svg)](https://github.com/stefan-niedermann/nextcloud-notes/actions)
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/9f784826834042e8b512d531cab84711)](https://www.codacy.com/manual/info_147/nextcloud-notes?utm_source=github.com&utm_medium=referral&utm_content=stefan-niedermann/nextcloud-notes&utm_campaign=Badge_Grade)
[![GitHub issues](https://img.shields.io/github/issues/stefan-niedermann/nextcloud-notes.svg)](https://github.com/stefan-niedermann/nextcloud-notes/issues)
[![GitHub stars](https://img.shields.io/github/stars/stefan-niedermann/nextcloud-notes.svg)](https://github.com/stefan-niedermann/nextcloud-notes/stargazers)
[![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
## Authors

## :arrow_forward: Access
[Authors](https://gitlab.e.foundation/e/apps/Notes/-/blob/master/AUTHORS)

[![Latest Release](https://img.shields.io/github/v/tag/stefan-niedermann/nextcloud-notes?label=latest+release&sort=semver)](https://github.com/stefan-niedermann/nextcloud-notes/tags)
[![F-Droid Release](https://img.shields.io/f-droid/v/it.niedermann.owncloud.notes)](https://f-droid.org/de/packages/it.niedermann.owncloud.notes/)
## Release Notes

[<img src="https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png"
      alt="Get it on Play Store"
      height="80">](https://play.google.com/store/apps/details?id=it.niedermann.owncloud.notes)
[<img src="https://f-droid.org/badge/get-it-on.png"
      alt="Get it on F-Droid"
      height="80">](https://f-droid.org/repository/browse/?fdid=it.niedermann.owncloud.notes)
[<img src="https://raw.githubusercontent.com/stefan-niedermann/paypal-donate-button/master/paypal-donate-button.png"
      alt="Donate with PayPal"
      height="80">](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=K7HVLE6J7SXXA)
[<img src="https://raw.githubusercontent.com/stefan-niedermann/DonateButtons/master/LiberaPay.png"
      alt="Donate using Liberapay"
      height="80">](https://liberapay.com/stefan-niedermann/donate)
Check out the [Release Notes](https://gitlab.e.foundation/e/apps/Notes/-/releases) to find out what changed
in each version of Notes.

## :eyes: Screenshots
## Privacy Policy

| _ | _ | _ |
| :--: | :--: | :--: |
| ![Screenshot of list view](/fastlane/metadata/android/en-US/images/phoneScreenshots/2.png) | ![Screenshot of edit mode](/fastlane/metadata/android/en-US/images/phoneScreenshots/3.png) | ![Screenshot of preview](/fastlane/metadata/android/en-US/images/phoneScreenshots/4.png) |
[Privacy Policy](https://e.foundation/legal-notice-privacy)  
[Terms of service](https://e.foundation/legal-notice-privacy)

## :rocket: Features
  * Multiple accounts
  * List, create, edit, share, search and delete notes
  * Share text and links as new note into the app
  * Toggling checkboxes in view mode
  * Mark notes as favorite
  * Bulk delete
  * In-note search
  * Single note widget and note list widget
  * Render Markdown (using [Markwon](https://noties.io/Markwon))
  * Translated in many languages on [Transifex](https://www.transifex.com/nextcloud/nextcloud/android-notes/)
  * Context based formatting ([#363](https://github.com/stefan-niedermann/nextcloud-notes/issues/363))
  * Password protection ([#354](https://github.com/stefan-niedermann/nextcloud-notes/issues/354))
## License

## :checkered_flag: Roadmap
  * We usually focus on [pinned issues](https://github.com/stefan-niedermann/nextcloud-notes/issues) in our issue tracker
  * Since this is an Open Source freetime project, there is no guarantee when and if and how we implement new features

## :family: Join the team
  * Test the app with different devices
  * Report issues in the [issue tracker](https://github.com/stefan-niedermann/nextcloud-notes/issues)
  * [Pick a good first issue](https://github.com/stefan-niedermann/nextcloud-notes/labels/Good%20first%20issue) :notebook:
  * Create a [Pull Request](https://opensource.guide/how-to-contribute/#opening-a-pull-request)
  * Help translating this app on [Transifex](https://www.transifex.com/nextcloud/nextcloud/android-notes/) 🌎
  * Buy this app on [Google Play Store](https://play.google.com/store/apps/details?id=it.niedermann.owncloud.notes)
  * Send me a bottle of your favorite beer :beers: :wink:

## :link: Requirements
  * [Nextcloud](https://nextcloud.com/) instance running
  * [Nextcloud Android](https://github.com/nextcloud/android) app installed (≥ 3.9.0)
  * [Nextcloud Notes](https://github.com/nextcloud/notes) app enabled

## :notebook: License
This project is licensed under the [GNU GENERAL PUBLIC LICENSE](/LICENSE).
Notes is licensed under the [GNU General Public License v3.0](https://gitlab.e.foundation/e/apps/Notes/-/blob/master/LICENSE)
 No newline at end of file
+4 −83
Original line number Diff line number Diff line
@@ -2,94 +2,15 @@ package it.niedermann.owncloud.notes.about;

import android.os.Bundle;

import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentActivity;
import androidx.viewpager2.adapter.FragmentStateAdapter;
import androidx.appcompat.app.AppCompatActivity;

import com.google.android.material.tabs.TabLayoutMediator;

import it.niedermann.owncloud.notes.LockedActivity;
import it.niedermann.owncloud.notes.R;
import it.niedermann.owncloud.notes.branding.BrandingUtil;
import it.niedermann.owncloud.notes.databinding.ActivityAboutBinding;

public class AboutActivity extends LockedActivity {

    private ActivityAboutBinding binding;
    private final static int POS_CREDITS = 0;
    private final static int POS_CONTRIB = 1;
    private final static int POS_LICENSE = 2;
    private final static int TOTAL_COUNT = 3;

public class AboutActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        binding = ActivityAboutBinding.inflate(getLayoutInflater());
        setContentView(binding.getRoot());

        setSupportActionBar(binding.toolbar);
        binding.pager.setAdapter(new TabsStateAdapter(this));
        // generate title based on given position
        new TabLayoutMediator(binding.tabs, binding.pager, (tab, position) -> {
            switch (position) {
                default: // Fall-through to credits tab
                case POS_CREDITS:
                    tab.setText(R.string.about_credits_tab_title);
                    break;
                case POS_CONTRIB:
                    tab.setText(R.string.about_contribution_tab_title);
                    break;
                case POS_LICENSE:
                    tab.setText(R.string.about_license_tab_title);
                    break;
            }
        }).attach();
    }

    @Override
    public void applyBrand(int mainColor, int textColor) {
        applyBrandToPrimaryToolbar(binding.appBar, binding.toolbar);
        @ColorInt int finalMainColor = BrandingUtil.getSecondaryForegroundColorDependingOnTheme(this, mainColor);
        binding.tabs.setSelectedTabIndicatorColor(finalMainColor);
    }

    private static class TabsStateAdapter extends FragmentStateAdapter {

        TabsStateAdapter(FragmentActivity fa) {
            super(fa);
        }

        @Override
        public int getItemCount() {
            return TOTAL_COUNT;
        }

        /**
         * return the right fragment for the given position
         */
        @NonNull
        @Override
        public Fragment createFragment(int position) {
            switch (position) {
                default: // Fall-through to credits tab
                case POS_CREDITS:
                    return new AboutFragmentCreditsTab();

                case POS_CONTRIB:
                    return new AboutFragmentContributingTab();

                case POS_LICENSE:
                    return new AboutFragmentLicenseTab();
            }
        }
    }

    @Override
    public boolean onSupportNavigateUp() {
        finish(); // close this activity as oppose to navigating up
        return true;
        setContentView(R.layout.activity_about);
        getFragmentManager().beginTransaction().replace(R.id.container, new AboutFragment()).commit();
    }
}
 No newline at end of file
+24 −0
Original line number Diff line number Diff line
package it.niedermann.owncloud.notes.about;

import android.os.Bundle;
import android.preference.PreferenceFragment;

import androidx.annotation.Nullable;

import it.niedermann.owncloud.notes.BuildConfig;
import it.niedermann.owncloud.notes.R;

public class AboutFragment extends PreferenceFragment {

    private static final String BUILD_VERSION = "build_version";

    @Override
    public void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        addPreferencesFromResource(R.xml.about_preferences);

        findPreference(BUILD_VERSION).setSummary(BuildConfig.VERSION_NAME);

    }
}
+0 −28
Original line number Diff line number Diff line
package it.niedermann.owncloud.notes.about;

import static it.niedermann.owncloud.notes.shared.util.SupportUtil.setTextWithURL;

import android.os.Bundle;
import android.text.method.LinkMovementMethod;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;

import it.niedermann.owncloud.notes.R;
import it.niedermann.owncloud.notes.databinding.FragmentAboutContributionTabBinding;
import it.niedermann.owncloud.notes.shared.util.SupportUtil;

public class AboutFragmentContributingTab extends Fragment {

    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        final var binding = FragmentAboutContributionTabBinding.inflate(inflater, container, false);
        setTextWithURL(binding.aboutSource, getResources(), R.string.about_source, R.string.url_source, R.string.url_source);
        setTextWithURL(binding.aboutIssues, getResources(), R.string.about_issues, R.string.url_issues, R.string.url_issues);
        setTextWithURL(binding.aboutTranslate, getResources(), R.string.about_translate, R.string.url_translations, R.string.url_translations);
        return binding.getRoot();
    }
}
 No newline at end of file
+0 −31
Original line number Diff line number Diff line
package it.niedermann.owncloud.notes.about;

import static it.niedermann.owncloud.notes.shared.util.SupportUtil.setTextWithURL;
import static it.niedermann.owncloud.notes.shared.util.SupportUtil.strong;
import static it.niedermann.owncloud.notes.shared.util.SupportUtil.url;

import android.os.Bundle;
import android.text.method.LinkMovementMethod;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;

import it.niedermann.owncloud.notes.BuildConfig;
import it.niedermann.owncloud.notes.R;
import it.niedermann.owncloud.notes.databinding.FragmentAboutCreditsTabBinding;

public class AboutFragmentCreditsTab extends Fragment {

    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        final var binding = FragmentAboutCreditsTabBinding.inflate(inflater, container, false);
        binding.aboutVersion.setText(getString(R.string.about_version, strong(BuildConfig.VERSION_NAME)));
        binding.aboutMaintainer.setText(url(getString(R.string.about_maintainer), getString(R.string.url_maintainer)));
        binding.aboutMaintainer.setMovementMethod(new LinkMovementMethod());
        setTextWithURL(binding.aboutTranslators, getResources(), R.string.about_translators_transifex, R.string.about_translators_transifex_label, R.string.url_translations);
        return binding.getRoot();
    }
}
 No newline at end of file
Loading