Skip to content

Commit

Permalink
New Color picker, bump Android minSdk from 16 to 18, closes #1428 (PR #…
Browse files Browse the repository at this point in the history
…2203 by @halfdane)

* fixes #1428 by introducing a new color picker

* Update preferences_master.xml

* Restore preference

---------

Co-authored-by: Gregor Santner <[email protected]>
  • Loading branch information
halfdane and gsantner authored Jul 27, 2024
1 parent 9f4f6f5 commit 19e0cdc
Show file tree
Hide file tree
Showing 40 changed files with 18 additions and 2,260 deletions.
4 changes: 2 additions & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ if (enable_plugin_kotlin) {
apply plugin: 'kotlin-kapt'
}

rootProject.ext.version_minSdk = 16
rootProject.ext.version_minSdk = 18

// https://github.com/vsch/flexmark-java/releases
ext.version_library_flexmark = "0.42.14"
Expand Down Expand Up @@ -142,7 +142,7 @@ dependencies {
implementation 'com.github.AppIntro:AppIntro:6.2.0'
implementation 'com.kailashdabhi:om-recorder:1.1.5'
implementation 'com.github.mertakdut:EpubParser:1.0.95'
implementation project(':app:thirdparty-lib-src:QuadFlask-colorpicker')
implementation 'com.github.martin-stone:hsv-alpha-color-picker-android:3.1.0'

// Tool libraries
//noinspection AnnotationProcessorOnCompilePath
Expand Down
45 changes: 0 additions & 45 deletions app/src/main/java/net/gsantner/markor/format/ActionButtonBase.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,6 @@
import androidx.annotation.StringRes;
import androidx.appcompat.widget.TooltipCompat;

import com.flask.colorpicker.ColorPickerView;
import com.flask.colorpicker.Utils;
import com.flask.colorpicker.builder.ColorPickerClickListener;
import com.flask.colorpicker.builder.ColorPickerDialogBuilder;

import net.gsantner.markor.ApplicationObject;
import net.gsantner.markor.R;
import net.gsantner.markor.activity.DocumentActivity;
Expand Down Expand Up @@ -993,46 +988,6 @@ public void runSpecialKeyAction() {
});
}

public void showColorPickerDialog() {
MarkorDialogFactory.showColorSelectionModeDialog(getActivity(), new GsCallback.a1<Integer>() {
@Override
public void callback(Integer colorInsertType) {
ColorPickerDialogBuilder
.with(_hlEditor.getContext())
.setTitle(R.string.color)
.wheelType(ColorPickerView.WHEEL_TYPE.FLOWER)
.density(12)
.setPositiveButton(android.R.string.ok, new ColorPickerClickListener() {
@Override
public void onClick(DialogInterface dialog, int selectedColor, Integer[] allColors) {
String hex = Utils.getHexString(selectedColor, false).toLowerCase();
int pos = _hlEditor.getSelectionStart();
switch (colorInsertType) {
case R.string.hexcode: {
_hlEditor.getText().insert(pos, hex);
break;
}
case R.string.foreground: {
_hlEditor.getText().insert(pos, "<span style='color:" + hex + ";'></span>");
_hlEditor.setSelection(_hlEditor.getSelectionStart() - 7);
break;
}
case R.string.background: {
_hlEditor.getText().insert(pos, "<span style='background-color:" + hex + ";'></span>");
_hlEditor.setSelection(_hlEditor.getSelectionStart() - 7);
break;
}
}

}
})
.setNegativeButton(R.string.cancel, null)
.build()
.show();
}
});
}

public void runJumpBottomTopAction(ActionItem.DisplayMode displayMode) {
if (displayMode == ActionItem.DisplayMode.EDIT) {
int pos = _hlEditor.getSelectionStart();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,8 @@
import androidx.preference.PreferenceScreen;
import androidx.recyclerview.widget.RecyclerView;

import com.rarepebble.colorpicker.ColorPreference;

import net.gsantner.opoc.model.GsSharedPreferencesPropertyBackend;
import net.gsantner.opoc.util.GsContextUtils;
import net.gsantner.opoc.wrapper.GsCallback;
Expand Down Expand Up @@ -154,7 +156,7 @@ public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {

if (activity != null && activity.getTheme() != null) {
TypedArray array = activity.getTheme().obtainStyledAttributes(new int[]{android.R.attr.colorBackground});
int bgcolor = array.getColor(0, 0xFFFFFFFF);
int bgcolor = array.getColor(0, 0xFFFFFF);
_defaultIconTintColor = _cu.shouldColorOnTopBeLight(bgcolor) ? Color.WHITE : Color.BLACK;
}

Expand Down Expand Up @@ -295,6 +297,14 @@ protected void onPreferenceChanged(SharedPreferences prefs, String key) {
}
}

public void onDisplayPreferenceDialog(Preference preference) {
if (preference instanceof ColorPreference) {
((ColorPreference) preference).showDialog(this, 0);
} else {
super.onDisplayPreferenceDialog(preference);
}
}

@Override
@Deprecated
public boolean onPreferenceTreeClick(Preference preference) {
Expand Down
11 changes: 5 additions & 6 deletions app/src/main/res/xml/preferences_master.xml
Original file line number Diff line number Diff line change
Expand Up @@ -200,26 +200,25 @@
android:summary="@string/background_foreground_color_in_editor_works_dark_light"
android:title="@string/basic_color_scheme">

<other.com.flask.colorpicker.ColorPickerPreference
<com.rarepebble.colorpicker.ColorPreference
android:defaultValue="@color/background"
android:icon="@drawable/ic_border_outer_black_24dp"
android:key="@string/pref_key__basic_color_scheme__bg_light"
android:title="BG Light" />

<other.com.flask.colorpicker.ColorPickerPreference
<com.rarepebble.colorpicker.ColorPreference
android:defaultValue="@color/dark_grey"
android:icon="@drawable/ic_text_fields_black_24dp"
android:key="@string/pref_key__basic_color_scheme__fg_light"
android:title="FG Light" />

<other.com.flask.colorpicker.ColorPickerPreference
<com.rarepebble.colorpicker.ColorPreference
android:defaultValue="@color/dark_grey"
android:icon="@drawable/ic_border_outer_black_24dp"
android:key="@string/pref_key__basic_color_scheme__bg_dark"
android:title="BG Dark" />


<other.com.flask.colorpicker.ColorPickerPreference
<com.rarepebble.colorpicker.ColorPreference
android:defaultValue="@color/white"
android:icon="@drawable/ic_text_fields_black_24dp"
android:key="@string/pref_key__basic_color_scheme__fg_dark"
Expand Down Expand Up @@ -420,7 +419,7 @@
</PreferenceCategory>

<PreferenceCategory android:title="@string/text">
<other.com.flask.colorpicker.ColorPickerPreference
<com.rarepebble.colorpicker.ColorPreference
android:defaultValue="@color/default_link_color"
android:icon="@drawable/ic_format_underlined_black_24dp"
android:key="@string/pref_key__view_mode_link_color"
Expand Down
1 change: 0 additions & 1 deletion app/thirdparty-lib-src/QuadFlask-colorpicker/.gitignore

This file was deleted.

13 changes: 0 additions & 13 deletions app/thirdparty-lib-src/QuadFlask-colorpicker/LICENSE-QuadFlask.md

This file was deleted.

142 changes: 0 additions & 142 deletions app/thirdparty-lib-src/QuadFlask-colorpicker/README.md

This file was deleted.

28 changes: 0 additions & 28 deletions app/thirdparty-lib-src/QuadFlask-colorpicker/build.gradle

This file was deleted.

17 changes: 0 additions & 17 deletions app/thirdparty-lib-src/QuadFlask-colorpicker/proguard-rules.pro

This file was deleted.

This file was deleted.

This file was deleted.

Loading

0 comments on commit 19e0cdc

Please sign in to comment.