Skip to content

Commit

Permalink
eLauncher: new release
Browse files Browse the repository at this point in the history
  • Loading branch information
thypon committed Aug 25, 2024
1 parent 54d3e9f commit afa5023
Show file tree
Hide file tree
Showing 12 changed files with 33 additions and 33 deletions.
19 changes: 10 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,27 @@
# NoLauncher
# eLauncher

NoLauncher is an extremely lightweight and minimal launcher for Android inspired by [OLauncher Light](https://github.com/tanujnotes/Ultra/), and OLauncher in general. It is even more barebones than OLauncher Light, and aims to provide only the most basic features.
eLauncher is an extremely lightweight and minimal launcher for Android, based on NoLauncher and inspired by [OLauncher Light](https://github.com/tanujnotes/Ultra/), and OLauncher in general. It is even more barebones than OLauncher Light, and aims to provide only the most basic features.

eLauncher favours support easy readibility on eInk/ePaper devices, such as the Onyx Boox Note series, and the Bigme HiBreak.

## Features

- Extremely lightweight: only 779KB
- eInk friendly: uses a light theme by default

- Homescreen and app drawer: swipe up on homescreen to enter the app drawer
- Long press an app field on the homescreen to assign an app, app can be renamed
- Type to search in app drawer, if only one result is left, it is automatically launched (like OLauncher)
- Gestures: swipe down for notification center, left for camera app, right for phone app, double tap to lock screen (requires root)
- Gestures: swipe down for notification center, left for camera app, right for phone app, double tap to hopen app drawer with keyboard
- Hold on empty space to change the number of apps on homescreen

## apk size differences with OLauncher Light

This might have been done on purpose, but OLauncher Light uses long deprecated APIs, like ListView to achieve its impressive 23 KB apk size. NoLauncher uses RecyclerView, which is much better for performance and memory usage, and also uses many other newer APIs. Thus, the APK size is much larger than with OLauncher Light, but still really small - 1.8 MB.
This might have been done on purpose, but OLauncher Light uses long deprecated APIs, like ListView to achieve its impressive 23 KB apk size. eLauncher uses RecyclerView, which is much better for performance and memory usage, and also uses many other newer APIs. Thus, the APK size is much larger than with OLauncher Light, but still really small - 1.8 MB.

## Download

NoLauncher is available in the default F-Droid repository.

[<img src="https://fdroid.gitlab.io/artwork/badge/get-it-on.png" alt="Get it on F-Droid" height="80">](https://f-droid.org/packages/com.artikus.nolauncher)

Alternatively, you can download the apk file directly from the releases tab and install it manually. Do note that I will never officially publish NoLauncher to the Play Store.
Alternatively, you can download the apk file directly from the releases tab and install it manually.

## Contributing

Expand Down
4 changes: 2 additions & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ plugins {
}

android {
namespace 'com.artikus.nolauncher'
namespace 'me.pompel.elauncher'
compileSdk 32

defaultConfig {
applicationId "com.artikus.nolauncher"
applicationId "me.pompel.elauncher"
minSdk 21
targetSdk 33
versionCode 1
Expand Down
5 changes: 3 additions & 2 deletions app/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,12 @@
<uses-permission android:name="android.permission.QUERY_ALL_PACKAGES" />
<application
android:allowBackup="true"
android:label="NoLauncher"
android:label="eLauncher"
android:supportsRtl="true"
android:theme="@android:style/Theme.Wallpaper.NoTitleBar"
android:extractNativeLibs="true"
tools:targetApi="31">
tools:targetApi="31"
>

<activity
android:name=".MainActivity"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.artikus.nolauncher;
package me.pompel.elauncher;

public class App {
public String appName;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.artikus.nolauncher;
package me.pompel.elauncher;

import static android.view.WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS;

Expand Down Expand Up @@ -35,8 +35,6 @@
import android.widget.LinearLayout;
import android.widget.TextView;

import com.artikus.nolauncher.recyclerAdapter;

import java.util.ArrayList;
import java.util.Collections;

Expand Down Expand Up @@ -87,11 +85,6 @@ private void openAppWithIntent(Intent intent, boolean change) {
if (change) changeLayout(true, false);
}

public void lock() {
try { Runtime.getRuntime().exec(new String[] { "su", "-c", "input keyevent 26" }).waitFor(); }
catch (Exception e) { e.printStackTrace(); }
}

@Override public void onBackPressed() { if (findViewById(R.id.AppDrawer).getVisibility() == View.VISIBLE) changeLayout(true, true); }

@Override protected void onCreate(Bundle savedInstanceState) {
Expand Down Expand Up @@ -151,9 +144,9 @@ else if (!recyclerView.canScrollVertically(-1)) {
CharSequence[] alertApps = appNames.toArray(new CharSequence[0]);
for (int i = 0; i < prefs.getInt("apps", 8); i++) {
TextView textView = new TextView(this);
textView.setTextColor(Color.WHITE);
textView.setTextColor(Color.BLACK);
textView.setTextSize(TypedValue.COMPLEX_UNIT_DIP, 25);
textView.setTypeface(Typeface.create("sans-serif-light", Typeface.NORMAL));
textView.setTypeface(Typeface.create("sans-serif-bold", Typeface.NORMAL));
textView.setPadding(0, 0, 0, 50);
textView.setText(prefs.getString(Integer.toString(i), "App"));
textView.setTag(i);
Expand Down Expand Up @@ -207,13 +200,17 @@ else if (Math.abs(yDiff) > 100 && Math.abs(velocityY) > 100) {
catch (Exception e) { e.printStackTrace(); }
else {
changeLayout(false, true);
keyboardAction(false);
keyboardAction(true);
}
}
return true;
}

@Override public boolean onDoubleTap(MotionEvent e) { lock(); return true; }
@Override public boolean onDoubleTap(MotionEvent e) {
changeLayout(false, true);
keyboardAction(false);
return true;
}

@Override public void onLongPress(MotionEvent e) {
super.onLongPress(e);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package com.artikus.nolauncher;
package me.pompel.elauncher;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/drawable/bottom_line.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<shape android:shape="rectangle" >
<stroke
android:width="0.5dp"
android:color="@android:color/white" />
android:color="#000000" />
</shape>
</item>
</layer-list>
5 changes: 3 additions & 2 deletions app/src/main/res/layout/activity_main.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@
android:id="@+id/MainLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:animateLayoutChanges="true"
android:animateLayoutChanges="false"
android:background="@android:color/white"
tools:context=".MainActivity">

<LinearLayout
Expand Down Expand Up @@ -47,7 +48,7 @@
android:inputType="text"
android:lines="1"
android:textAlignment="center"
android:textColor="@android:color/white"
android:textColor="@android:color/black"
android:textSize="25sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/layout/list_items.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,6 @@
android:layout_marginTop="20dp"
android:fontFamily="sans-serif-light"
android:textAlignment="center"
android:textColor="#FFFFFF"
android:textColor="@android:color/black"
android:textSize="25sp" />
</FrameLayout>
2 changes: 1 addition & 1 deletion fastlane/metadata/android/en-US/title.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
NoLauncher
eLauncher
Binary file removed releases/NoLauncher-1.0.apk
Binary file not shown.
2 changes: 1 addition & 1 deletion settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ dependencyResolutionManagement {
mavenCentral()
}
}
rootProject.name = "NoLauncher"
rootProject.name = "eLauncher"
include ':app'

0 comments on commit afa5023

Please sign in to comment.