Compare commits
13 Commits
release-4.
...
main
Author | SHA1 | Date | |
---|---|---|---|
b2604c1650 | |||
a4dee6a179 | |||
8d69c7b9ce | |||
367380921f | |||
471889f744 | |||
84551ca8be | |||
b4d08a6733 | |||
2cf702982a | |||
65ca86847f | |||
64b9b07a9e | |||
d5cf4295bd | |||
8b0e3ee53d | |||
a2cf46a896 |
@ -1,22 +1,22 @@
|
||||
## # What do you want to address?
|
||||
<!-- This step is required; examples are shown below -->
|
||||
---
|
||||
|
||||
- [ ] Bug
|
||||
- [ ] Feature
|
||||
- [ ] Suggestion
|
||||
name: "Bug"
|
||||
about: "Something isn't working"
|
||||
labels:
|
||||
|
||||
- Bug
|
||||
|
||||
---
|
||||
|
||||
## # Describe your matter briefly
|
||||
<!-- This step is required. -->
|
||||
<br><br>
|
||||
|
||||
##### What did you expect? <!-- Useful when addressing bugs -->
|
||||
##### What did you expect?
|
||||
---
|
||||
<!-- This step is optional. -->
|
||||
<br><br>
|
||||
|
||||
##### Some additional details <!-- Useful, when we are trying to reproduce a bug -->
|
||||
##### Some additional details
|
||||
---
|
||||
<!-- This step is optional; an example is shown below -->
|
||||
|
||||
* The version of **Gitea** you are using:
|
||||
* The version of **GitNex** you are using:
|
||||
@ -34,4 +34,4 @@
|
||||
- [ ] I carefully read the [contribution guidelines](https://codeberg.org/GitNex/GitNex/src/branch/main/CONTRIBUTING.md).
|
||||
<br>
|
||||
|
||||
#### Thank you for your time.
|
||||
<!-- Thank you for your time. -->
|
17
.gitea/issue_template/feature.md
Normal file
17
.gitea/issue_template/feature.md
Normal file
@ -0,0 +1,17 @@
|
||||
---
|
||||
|
||||
name: "Feature"
|
||||
about: "A new feature or an enhancement to an existing feature"
|
||||
labels:
|
||||
|
||||
- Feature
|
||||
|
||||
---
|
||||
|
||||
## # Describe your matter briefly
|
||||
<br><br>
|
||||
|
||||
- [ ] I carefully read the [contribution guidelines](https://codeberg.org/GitNex/GitNex/src/branch/main/CONTRIBUTING.md).
|
||||
<br>
|
||||
|
||||
<!-- Thank you for your time. -->
|
37
.gitea/issue_template/suggestion.md
Normal file
37
.gitea/issue_template/suggestion.md
Normal file
@ -0,0 +1,37 @@
|
||||
---
|
||||
|
||||
name: "Suggestion"
|
||||
about: "A general suggestion"
|
||||
labels:
|
||||
|
||||
- Suggestion
|
||||
|
||||
---
|
||||
|
||||
## # Describe your matter briefly
|
||||
<br><br>
|
||||
|
||||
##### What did you expect?
|
||||
---
|
||||
<br><br>
|
||||
|
||||
##### Some additional details
|
||||
---
|
||||
|
||||
* The version of **Gitea** you are using:
|
||||
* The version of **GitNex** you are using:
|
||||
* Source of installation (Play Store, F-Droid, APK):
|
||||
* Current android version and phone model/manufacturer:
|
||||
* The type of certificate your instance is using (self-signed, signed):
|
||||
* How you used to log in (via password or token):
|
||||
<br>
|
||||
|
||||
##### We would appreciate some screenshots or stacktrace's, but this is also not required.
|
||||
---
|
||||
<!-- Screenshots and stacktrace's can go here. -->
|
||||
<br><br>
|
||||
|
||||
- [ ] I carefully read the [contribution guidelines](https://codeberg.org/GitNex/GitNex/src/branch/main/CONTRIBUTING.md).
|
||||
<br>
|
||||
|
||||
<!-- Thank you for your time. -->
|
@ -17,7 +17,7 @@ on_setup:
|
||||
- ./scripts/add-commit-status.sh
|
||||
|
||||
build:
|
||||
image: nextcloudci/android:android-54
|
||||
image: nextcloudci/android8:android-61
|
||||
stage: build
|
||||
only:
|
||||
- main
|
||||
@ -30,7 +30,7 @@ build:
|
||||
expire_in: 15 minutes
|
||||
|
||||
sign:
|
||||
image: nextcloudci/android:android-54
|
||||
image: nextcloudci/android8:android-61
|
||||
stage: sign
|
||||
only:
|
||||
- main
|
||||
|
@ -1,6 +1,6 @@
|
||||
[](https://www.gnu.org/licenses/gpl-3.0) [](https://gitlab.com/opyale/gitnex/-/pipelines) [](https://codeberg.org/gitnex/GitNex/releases) [](https://crowdin.com/project/gitnex) [](https://discord.gg/FbSS4rf)
|
||||
[](https://www.gnu.org/licenses/gpl-3.0) [](https://gitlab.com/mmarif4u/gitnex-ci/-/pipelines) [](https://codeberg.org/gitnex/GitNex/releases) [](https://crowdin.com/project/gitnex) [](https://discord.gg/FbSS4rf)
|
||||
|
||||
[<img alt="Become a Patroen" src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" height="40"/>](https://www.patreon.com/mmarif)
|
||||
[<img alt="Become a Patreon" src="https://c5.patreon.com/external/logo/become_a_patron_button@2x.png" height="40"/>](https://www.patreon.com/mmarif)
|
||||
|
||||
# GitNex - Android client for Gitea
|
||||
|
||||
@ -9,7 +9,7 @@ GitNex is a free/paid, open-source Android client for Git repository management
|
||||
GitNex is licensed under GPLv3 License. See the LICENSE file for the full license text. **No trackers are used** and source code is available here for anyone to audit.
|
||||
|
||||
## Downloads
|
||||
[<img alt='Get it on F-droid' src='https://gitlab.com/fdroid/artwork/raw/master/badge/get-it-on.png' height="80"/>](https://f-droid.org/en/packages/org.mian.gitnex/)
|
||||
[<img alt='Get it on F-Droid' src='https://gitlab.com/fdroid/artwork/raw/master/badge/get-it-on.png' height="80"/>](https://f-droid.org/en/packages/org.mian.gitnex/)
|
||||
[<img alt='Get it on Google Play' src='https://play.google.com/intl/en_us/badges/images/generic/en_badge_web_generic.png' height="80"/>](https://play.google.com/store/apps/details?id=org.mian.gitnex.pro)
|
||||
[<img alt='Download builds and releases' src='https://codeberg.org/gitnex/GitNex/raw/branch/main/assets/apk-badge.png' height="82"/>](https://cloud.swatian.com/s/DN7E5xxtaw4fRbE)
|
||||
|
||||
@ -57,8 +57,6 @@ We use [Crowdin](https://crowdin.com/project/gitnex) for translation. If your la
|
||||
|
||||
[Wiki](https://codeberg.org/gitnex/GitNex/wiki/Home)
|
||||
|
||||
[Website Repository](https://gitlab.com/mmarif4u/gitnex-website)
|
||||
|
||||
[Troubleshoot Guide](https://codeberg.org/gitnex/GitNex/wiki/Troubleshoot-Guide)
|
||||
|
||||
[Faq](https://codeberg.org/gitnex/GitNex/wiki/FAQ)
|
||||
|
@ -6,8 +6,8 @@ android {
|
||||
applicationId "org.mian.gitnex"
|
||||
minSdkVersion 21
|
||||
targetSdkVersion 30
|
||||
versionCode 410
|
||||
versionName "4.1.0"
|
||||
versionCode 415
|
||||
versionName "4.2.0"
|
||||
multiDexEnabled true
|
||||
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
@ -63,7 +63,7 @@ dependencies {
|
||||
implementation 'androidx.appcompat:appcompat:1.4.0-alpha03'
|
||||
implementation 'com.google.android.material:material:1.4.0'
|
||||
implementation 'androidx.viewpager2:viewpager2:1.1.0-beta01'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.1.0'
|
||||
implementation 'androidx.constraintlayout:constraintlayout:2.1.1'
|
||||
implementation "androidx.legacy:legacy-support-v4:1.0.0"
|
||||
implementation "androidx.lifecycle:lifecycle-viewmodel:$lifecycle_version"
|
||||
testImplementation 'junit:junit:4.13.2'
|
||||
|
@ -189,6 +189,10 @@
|
||||
<data android:host="code.obermui.de" />
|
||||
<data android:host="git.fsfe.org" />
|
||||
<data android:host="opendev.org" />
|
||||
<data android:host="git.shihaam.dev" />
|
||||
<data android:host="git.athfan.com" />
|
||||
<data android:host="git.athfan.dev" />
|
||||
|
||||
</intent-filter>
|
||||
|
||||
</activity>
|
||||
|
@ -1,7 +1,6 @@
|
||||
package org.mian.gitnex.activities;
|
||||
|
||||
import android.app.Dialog;
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.graphics.Color;
|
||||
import android.graphics.Typeface;
|
||||
@ -590,7 +589,7 @@ public class IssueDetailActivity extends BaseActivity implements LabelsListAdapt
|
||||
String issueNumber_ = "<font color='" + ResourcesCompat.getColor(getResources(), R.color.lightGray, null) + "'>" + appCtx.getResources()
|
||||
.getString(R.string.hash) + singleIssue.getNumber() + "</font>";
|
||||
viewBinding.issueTitle.setText(HtmlCompat.fromHtml(issueNumber_ + " " + EmojiParser.parseToUnicode(singleIssue.getTitle()), HtmlCompat.FROM_HTML_MODE_LEGACY));
|
||||
String cleanIssueDescription = singleIssue.getBody().trim();
|
||||
String cleanIssueDescription = singleIssue.getBody().trim().replace("\n", "<br/>");
|
||||
|
||||
viewBinding.assigneeAvatar.setOnClickListener(loginId -> {
|
||||
Intent intent = new Intent(ctx, ProfileActivity.class);
|
||||
|
@ -11,6 +11,7 @@ import android.view.MenuItem;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.inputmethod.EditorInfo;
|
||||
import androidx.activity.OnBackPressedCallback;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.lifecycle.ViewModelProvider;
|
||||
@ -121,6 +122,24 @@ public class FilesFragment extends Fragment implements FilesAdapter.FilesAdapter
|
||||
|
||||
});
|
||||
|
||||
requireActivity().getOnBackPressedDispatcher().addCallback(getViewLifecycleOwner(), new OnBackPressedCallback(true) {
|
||||
|
||||
@Override
|
||||
public void handleOnBackPressed() {
|
||||
if(path.size() == 0 || RepoDetailActivity.mViewPager.getCurrentItem() != 1) {
|
||||
requireActivity().finish();
|
||||
return;
|
||||
}
|
||||
path.remove(path.size() - 1);
|
||||
binding.breadcrumbsView.removeLastItem();
|
||||
if(path.size() == 0) {
|
||||
fetchDataAsync(Authorization.get(getContext()), repoOwner, repoName, ref);
|
||||
} else {
|
||||
fetchDataAsyncSub(Authorization.get(getContext()), repoOwner, repoName, path.toString(), ref);
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
((RepoDetailActivity) requireActivity()).setFragmentRefreshListenerFiles(repoBranch -> {
|
||||
|
||||
path.clear();
|
||||
|
@ -287,7 +287,7 @@ public class IssuesFragment extends Fragment {
|
||||
if(d == null || d.getTitle() == null || d.getBody() == null) {
|
||||
continue;
|
||||
}
|
||||
if(d.getTitle().toLowerCase().contains(text) || d.getBody().toLowerCase().contains(text) || d.getNumber() == Integer.parseInt(text)) {
|
||||
if(d.getTitle().toLowerCase().contains(text) || d.getBody().toLowerCase().contains(text) || String.valueOf(d.getNumber()).startsWith(text)) {
|
||||
arr.add(d);
|
||||
}
|
||||
}
|
||||
|
@ -275,7 +275,7 @@ public class PullRequestsFragment extends Fragment {
|
||||
if(d == null || d.getTitle() == null || d.getBody() == null) {
|
||||
continue;
|
||||
}
|
||||
if(d.getTitle().toLowerCase().contains(text) || d.getBody().toLowerCase().contains(text) || d.getNumber() == Integer.parseInt(text)) {
|
||||
if(d.getTitle().toLowerCase().contains(text) || d.getBody().toLowerCase().contains(text) || String.valueOf(d.getNumber()).startsWith(text)) {
|
||||
arr.add(d);
|
||||
}
|
||||
}
|
||||
|
@ -1,16 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<changelog>
|
||||
|
||||
<release version="4.1.0" versioncode="410">
|
||||
<change>New: Follow/unfollow a user</change>
|
||||
<change>New: Explore users</change>
|
||||
<change>New: Update pull request (merge, rebase)</change>
|
||||
<change>New: Filter issues by milestone</change>
|
||||
<change>Improvement: Scroll to release tag via link handler</change>
|
||||
<change>Improvement: Search issue/pr by Id</change>
|
||||
<change>Improvement: Hide profile picture when scrolling</change>
|
||||
<change>Improvement: Render markdown in repository and organization descriptions</change>
|
||||
<change>Bugfix: Fix showing mark as read button for read notifications</change>
|
||||
<release version="4.2.0" versioncode="415">
|
||||
<change>Under development</change>
|
||||
</release>
|
||||
|
||||
</changelog>
|
||||
|
@ -11,7 +11,7 @@
|
||||
context="GitLab CI"
|
||||
description="GitLab continuous integration tool"
|
||||
state=$STATE
|
||||
target_url="https://gitlab.com/opyale/gitnex/-/pipelines"
|
||||
target_url="https://gitlab.com/mmarif4u/gitnex-ci/-/pipelines"
|
||||
|
||||
body='
|
||||
{
|
||||
|
@ -9,6 +9,10 @@
|
||||
[ -z "${KS_FILE}" ] && { echo "Filename of keystore is missing (KS_FILE)"; exit 1; }
|
||||
[ -z "${OUTPUT}" ] && { echo "Missing filename of signed output (OUTPUT)"; exit 1; }
|
||||
|
||||
# Update the docker container. curl is an outdated version which has to be updated.
|
||||
apt update
|
||||
apt upgrade curl -y
|
||||
|
||||
KEYFILE=$(mktemp)
|
||||
curl -X GET "${INSTANCE}/api/v1/repos/${KS_REPO}/contents/${KS_FILE}?token=${BOT_TOKEN}" -H "accept: application/json" | sed 's|"content":"|#|g' | cut -d '#' -f 2 | cut -d '"' -f 1 | base64 -d > ${KEYFILE}
|
||||
|
||||
|
Reference in New Issue
Block a user