Improve the image editor.
A variety of improvements to the image editor, such as: - New, fullscreen styling - Smoother lines - Better text and sticker handling - Improved color picker with a history pallette - New highlighter tool
BIN
res/drawable-hdpi/baseline_highlight_white_24.png
Normal file
After Width: | Height: | Size: 961 B |
Before Width: | Height: | Size: 268 B After Width: | Height: | Size: 788 B |
Before Width: | Height: | Size: 331 B After Width: | Height: | Size: 561 B |
Before Width: | Height: | Size: 345 B After Width: | Height: | Size: 582 B |
Before Width: | Height: | Size: 391 B After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 593 B After Width: | Height: | Size: 1.8 KiB |
Before Width: | Height: | Size: 139 B After Width: | Height: | Size: 708 B |
BIN
res/drawable-mdpi/baseline_highlight_white_24.png
Normal file
After Width: | Height: | Size: 654 B |
Before Width: | Height: | Size: 193 B After Width: | Height: | Size: 506 B |
Before Width: | Height: | Size: 311 B After Width: | Height: | Size: 351 B |
Before Width: | Height: | Size: 301 B After Width: | Height: | Size: 446 B |
Before Width: | Height: | Size: 244 B After Width: | Height: | Size: 838 B |
Before Width: | Height: | Size: 376 B After Width: | Height: | Size: 1.1 KiB |
Before Width: | Height: | Size: 100 B After Width: | Height: | Size: 482 B |
BIN
res/drawable-xhdpi/baseline_highlight_white_24.png
Normal file
After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 315 B After Width: | Height: | Size: 984 B |
Before Width: | Height: | Size: 474 B After Width: | Height: | Size: 576 B |
Before Width: | Height: | Size: 398 B After Width: | Height: | Size: 685 B |
Before Width: | Height: | Size: 457 B After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 774 B After Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 105 B After Width: | Height: | Size: 539 B |
BIN
res/drawable-xxhdpi/baseline_highlight_white_24.png
Normal file
After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 429 B After Width: | Height: | Size: 1.7 KiB |
Before Width: | Height: | Size: 460 B After Width: | Height: | Size: 990 B |
Before Width: | Height: | Size: 338 B After Width: | Height: | Size: 1.0 KiB |
Before Width: | Height: | Size: 675 B After Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 4.8 KiB |
Before Width: | Height: | Size: 134 B After Width: | Height: | Size: 763 B |
BIN
res/drawable-xxxhdpi/baseline_highlight_white_24.png
Normal file
After Width: | Height: | Size: 2.1 KiB |
Before Width: | Height: | Size: 532 B After Width: | Height: | Size: 2.4 KiB |
BIN
res/drawable-xxxhdpi/ic_check_white_24dp.png
Normal file
After Width: | Height: | Size: 946 B |
BIN
res/drawable-xxxhdpi/ic_delete_white_24dp.png
Normal file
After Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 908 B After Width: | Height: | Size: 4.2 KiB |
Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 6.8 KiB |
Before Width: | Height: | Size: 111 B After Width: | Height: | Size: 840 B |
4
res/drawable/circle_white.xml
Normal file
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
|
||||
<solid android:color="@color/white"/>
|
||||
</shape>
|
22
res/layout/item_color.xml
Normal file
@@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<FrameLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:padding="6dp">
|
||||
|
||||
<ImageView
|
||||
android:layout_width="20dp"
|
||||
android:layout_height="20dp"
|
||||
android:src="@drawable/circle_white"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/palette_item_foreground"
|
||||
android:layout_width="16dp"
|
||||
android:layout_height="16dp"
|
||||
android:src="@drawable/circle_white"
|
||||
android:layout_gravity="center"
|
||||
tools:tint="@color/red"/>
|
||||
|
||||
</FrameLayout>
|
@@ -1,44 +1,23 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:id="@+id/activity_main"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:orientation="vertical"
|
||||
tools:context="org.thoughtcrime.securesms.scribbles.ScribbleActivity">
|
||||
<FrameLayout
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:id="@+id/activity_main"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:background="@color/black"
|
||||
tools:context="org.thoughtcrime.securesms.scribbles.ScribbleActivity">
|
||||
|
||||
<org.thoughtcrime.securesms.scribbles.ScribbleToolbar
|
||||
android:id="@+id/toolbar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:background="@color/white"/>
|
||||
<org.thoughtcrime.securesms.scribbles.widget.ScribbleView
|
||||
android:id="@+id/scribble_view"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center" />
|
||||
|
||||
<FrameLayout android:layout_weight="1"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="0dp"
|
||||
android:layout_gravity="center"
|
||||
android:background="@color/grey_300"
|
||||
android:gravity="center">
|
||||
<org.thoughtcrime.securesms.scribbles.ScribbleHud
|
||||
android:id="@+id/scribble_hud"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content" />
|
||||
|
||||
<org.thoughtcrime.securesms.scribbles.widget.ScribbleView
|
||||
android:id="@+id/scribble_view"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="center"
|
||||
android:gravity="center"/>
|
||||
|
||||
<org.thoughtcrime.securesms.scribbles.widget.VerticalSlideColorPicker
|
||||
android:id="@+id/scribble_color_picker"
|
||||
android:layout_width="13dp"
|
||||
android:layout_height="300dp"
|
||||
android:layout_gravity="top|right"
|
||||
android:layout_marginRight="25dp"
|
||||
android:layout_marginTop="20dp"
|
||||
app:pickerBorderWidth="1dp"
|
||||
app:pickerBorderColor="@color/grey_600"
|
||||
app:pickerColors="@array/scribble_colors"/>
|
||||
|
||||
</FrameLayout>
|
||||
|
||||
</LinearLayout>
|
||||
</FrameLayout>
|
||||
|
89
res/layout/scribble_hud.xml
Normal file
@@ -0,0 +1,89 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merge
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/scribble_save_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_gravity="top|left"
|
||||
android:src="@drawable/ic_check_white_24dp"
|
||||
android:padding="12dp"
|
||||
android:background="?attr/selectableItemBackgroundBorderless"/>
|
||||
|
||||
<LinearLayout
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="match_parent"
|
||||
android:layout_gravity="right|top"
|
||||
android:orientation="vertical"
|
||||
android:animateLayoutChanges="true">
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/scribble_text_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:src="@drawable/ic_text_fields_white_24dp"
|
||||
android:padding="12dp"
|
||||
android:background="?attr/selectableItemBackgroundBorderless"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/scribble_draw_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:src="@drawable/ic_brush_white_24dp"
|
||||
android:padding="12dp"
|
||||
android:background="?attr/selectableItemBackgroundBorderless"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/scribble_highlight_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:src="@drawable/baseline_highlight_white_24"
|
||||
android:padding="12dp"
|
||||
android:background="?attr/selectableItemBackgroundBorderless"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/scribble_sticker_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:src="@drawable/ic_tag_faces_white_24dp"
|
||||
android:padding="12dp"
|
||||
android:background="?attr/selectableItemBackgroundBorderless"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/scribble_undo_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:src="@drawable/ic_replay_white_24dp"
|
||||
android:padding="12dp"
|
||||
android:background="?attr/selectableItemBackgroundBorderless"/>
|
||||
|
||||
<ImageView
|
||||
android:id="@+id/scribble_delete_button"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:src="@drawable/ic_delete_white_24dp"
|
||||
android:padding="12dp"
|
||||
android:background="?attr/selectableItemBackgroundBorderless"/>
|
||||
|
||||
<org.thoughtcrime.securesms.scribbles.widget.VerticalSlideColorPicker
|
||||
android:id="@+id/scribble_color_picker"
|
||||
android:layout_width="26dp"
|
||||
android:layout_height="170dp"
|
||||
android:layout_gravity="center"
|
||||
android:layout_marginTop="12dp"
|
||||
app:pickerBorderWidth="4dp"
|
||||
app:pickerBorderColor="@color/white"
|
||||
app:pickerColors="@array/scribble_colors"/>
|
||||
|
||||
<android.support.v7.widget.RecyclerView
|
||||
android:id="@+id/scribble_color_palette"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="4dp"
|
||||
android:layout_gravity="center_horizontal"/>
|
||||
|
||||
</LinearLayout>
|
||||
|
||||
</merge>
|
@@ -1,9 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merge tools:parentTag="FrameLayout"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content">
|
||||
xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
|
||||
<ImageView android:id="@+id/image_view"
|
||||
android:layout_width="wrap_content"
|
||||
|
8
res/values-v19/themes.xml
Normal file
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<style name="TextSecure.ScribbleTheme" parent="TextSecure.DarkNoActionBar">
|
||||
<item name="android:windowNoTitle">true</item>
|
||||
<item name="android:windowFullscreen">true</item>
|
||||
<item name="android:windowTranslucentNavigation">true</item>
|
||||
</style>
|
||||
</resources>
|
@@ -273,11 +273,15 @@
|
||||
</integer-array>
|
||||
|
||||
<array name="scribble_colors">
|
||||
<item>#000000</item>
|
||||
<item>#ffffff</item>
|
||||
<item>#ff0000</item>
|
||||
<item>#ffff00</item>
|
||||
<item>#00ffff</item>
|
||||
<item>#ff00ff</item>
|
||||
<item>#0000ff</item>
|
||||
<item>#00ffff</item>
|
||||
<item>#00ff00</item>
|
||||
<item>#ffff00</item>
|
||||
<item>#ff5500</item>
|
||||
<item>#000000</item>
|
||||
</array>
|
||||
|
||||
<string-array name="pref_message_font_size_entries">
|
||||
|
@@ -54,7 +54,7 @@
|
||||
<color name="import_export_touch_highlight_light">#400099cc</color>
|
||||
<color name="import_export_touch_highlight_dark">#40ffffff</color>
|
||||
|
||||
<color name="sticker_selected_color">#8cf437</color>
|
||||
<color name="sticker_selected_color">#99ffffff</color>
|
||||
<color name="transparent">#00FFFFFF</color>
|
||||
|
||||
<color name="MediaOverview_Media_selected_overlay">#88000000</color>
|
||||
|
@@ -58,7 +58,7 @@
|
||||
<dimen name="onboarding_title_size">34sp</dimen>
|
||||
<dimen name="onboarding_subtitle_size">20sp</dimen>
|
||||
|
||||
<dimen name="scribble_stroke_size">3dp</dimen>
|
||||
<dimen name="scribble_stroke_size">2dp</dimen>
|
||||
|
||||
<dimen name="floating_action_button_margin">16dp</dimen>
|
||||
|
||||
|
@@ -373,4 +373,7 @@
|
||||
<item name="android:windowBackground">@drawable/permission_rationale_dialog_corners</item>
|
||||
</style>
|
||||
|
||||
<style name="TextSecure.ScribbleTheme" parent="TextSecure.DarkNoActionBar">
|
||||
</style>
|
||||
|
||||
</resources>
|
||||
|