summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <fox@fakecake.org>2025-05-06 22:07:03 +0300
committerAndrew Dolgov <fox@fakecake.org>2025-05-06 22:07:03 +0300
commita94ba6713757434ec42595c9a652f1bd5dd93237 (patch)
tree6d9e3d93ef468e441cdaa998ee28cc93bad62a07
parent1e82942909346fdb3fbecd8100b82a090c674725 (diff)
adjust some dynamic icons and article toolbar padding
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java4
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java4
-rwxr-xr-xorg.fox.ttrss/src/main/java/org/fox/ttrss/util/ScrimInsetsFrameLayout.java142
-rwxr-xr-xorg.fox.ttrss/src/main/res/layout/fragment_article.xml8
4 files changed, 9 insertions, 149 deletions
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
index d9550ef8..807b133b 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/OnlineActivity.java
@@ -1409,8 +1409,8 @@ public class OnlineActivity extends CommonActivity {
m_menu.findItem(R.id.toggle_published).setIcon(article.published ? R.drawable.baseline_check_box_24 :
R.drawable.baseline_rss_feed_24);
- m_menu.findItem(R.id.toggle_unread).setIcon(article.unread ? R.drawable.baseline_email_24 :
- R.drawable.baseline_mark_as_unread_24);
+ m_menu.findItem(R.id.toggle_unread).setIcon(article.unread ? R.drawable.baseline_mark_as_unread_24 :
+ R.drawable.baseline_email_24);
}
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java
index f2320a00..4da85e76 100755
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java
+++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/offline/OfflineActivity.java
@@ -611,8 +611,8 @@ public class OfflineActivity extends CommonActivity {
m_menu.findItem(R.id.toggle_published).setIcon(published ? R.drawable.baseline_check_box_24 :
R.drawable.baseline_rss_feed_24);
- m_menu.findItem(R.id.toggle_unread).setIcon(unread ? R.drawable.baseline_email_24 :
- R.drawable.baseline_mark_as_unread_24);
+ m_menu.findItem(R.id.toggle_unread).setIcon(unread ? R.drawable.baseline_mark_as_unread_24 :
+ R.drawable.baseline_email_24);
article.close();
}
diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/util/ScrimInsetsFrameLayout.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/util/ScrimInsetsFrameLayout.java
deleted file mode 100755
index d3a5ab27..00000000
--- a/org.fox.ttrss/src/main/java/org/fox/ttrss/util/ScrimInsetsFrameLayout.java
+++ /dev/null
@@ -1,142 +0,0 @@
-package org.fox.ttrss.util;
-/*
- * Copyright 2014 Google Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import android.content.Context;
-import android.content.res.TypedArray;
-import android.graphics.Canvas;
-import android.graphics.Rect;
-import android.graphics.drawable.Drawable;
-import android.util.AttributeSet;
-import android.widget.FrameLayout;
-
-import org.fox.ttrss.R;
-
-import androidx.core.view.ViewCompat;
-
-/**
- * A layout that draws something in the insets passed to {@link #fitSystemWindows(Rect)}, i.e. the area above UI chrome
- * (status and navigation bars, overlay action bars).
- */
-public class ScrimInsetsFrameLayout extends FrameLayout {
- private Drawable mInsetForeground;
-
- private Rect mInsets;
- private Rect mTempRect = new Rect();
- private OnInsetsCallback mOnInsetsCallback;
-
- public ScrimInsetsFrameLayout(Context context) {
- super(context);
- init(context, null, 0);
- }
-
- public ScrimInsetsFrameLayout(Context context, AttributeSet attrs) {
- super(context, attrs);
- init(context, attrs, 0);
- }
-
- public ScrimInsetsFrameLayout(Context context, AttributeSet attrs, int defStyle) {
- super(context, attrs, defStyle);
- init(context, attrs, defStyle);
- }
-
- private void init(Context context, AttributeSet attrs, int defStyle) {
- final TypedArray a = context.obtainStyledAttributes(attrs,
- R.styleable.ScrimInsetsView, defStyle, 0);
- if (a == null) {
- return;
- }
- mInsetForeground = a.getDrawable(R.styleable.ScrimInsetsView_insetForeground);
- a.recycle();
-
- setWillNotDraw(true);
- }
-
- @Override
- protected boolean fitSystemWindows(Rect insets) {
- mInsets = new Rect(insets);
- setWillNotDraw(mInsetForeground == null);
- ViewCompat.postInvalidateOnAnimation(this);
- if (mOnInsetsCallback != null) {
- mOnInsetsCallback.onInsetsChanged(insets);
- }
- return true; // consume insets
- }
-
- @Override
- public void draw(Canvas canvas) {
- super.draw(canvas);
-
- int width = getWidth();
- int height = getHeight();
- if (mInsets != null && mInsetForeground != null) {
- int sc = canvas.save();
- canvas.translate(getScrollX(), getScrollY());
-
- // Top
- mTempRect.set(0, 0, width, mInsets.top);
- mInsetForeground.setBounds(mTempRect);
- mInsetForeground.draw(canvas);
-
- // Bottom
- mTempRect.set(0, height - mInsets.bottom, width, height);
- mInsetForeground.setBounds(mTempRect);
- mInsetForeground.draw(canvas);
-
- // Left
- mTempRect.set(0, mInsets.top, mInsets.left, height - mInsets.bottom);
- mInsetForeground.setBounds(mTempRect);
- mInsetForeground.draw(canvas);
-
- // Right
- mTempRect.set(width - mInsets.right, mInsets.top, width, height - mInsets.bottom);
- mInsetForeground.setBounds(mTempRect);
- mInsetForeground.draw(canvas);
-
- canvas.restoreToCount(sc);
- }
- }
-
- @Override
- protected void onAttachedToWindow() {
- super.onAttachedToWindow();
- if (mInsetForeground != null) {
- mInsetForeground.setCallback(this);
- }
- }
-
- @Override
- protected void onDetachedFromWindow() {
- super.onDetachedFromWindow();
- if (mInsetForeground != null) {
- mInsetForeground.setCallback(null);
- }
- }
-
- /**
- * Allows the calling container to specify a callback for custom processing when insets change (i.e. when
- * {@link #fitSystemWindows(Rect)} is called. This is useful for setting padding on UI elements based on
- * UI chrome insets (e.g. a Google Map or a ListView). When using with ListView or GridView, remember to set
- * clipToPadding to false.
- */
- public void setOnInsetsCallback(OnInsetsCallback onInsetsCallback) {
- mOnInsetsCallback = onInsetsCallback;
- }
-
- public interface OnInsetsCallback {
- void onInsetsChanged(Rect insets);
- }
-} \ No newline at end of file
diff --git a/org.fox.ttrss/src/main/res/layout/fragment_article.xml b/org.fox.ttrss/src/main/res/layout/fragment_article.xml
index db407a22..f71ab5cc 100755
--- a/org.fox.ttrss/src/main/res/layout/fragment_article.xml
+++ b/org.fox.ttrss/src/main/res/layout/fragment_article.xml
@@ -24,12 +24,14 @@
<LinearLayout
app:layout_scrollFlags="scroll|enterAlways"
- android:padding="16dp"
+ android:paddingTop="0dp"
+ android:paddingStart="16dp"
+ android:paddingEnd="0dp"
+ android:paddingBottom="8dp"
android:id="@+id/article_header"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:orientation="vertical"
- android:paddingBottom="6dp">
+ android:orientation="vertical">
<LinearLayout
android:orientation="horizontal"