From 432228011c962e8e2436ff9884b9ad6145a90f7a Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Wed, 31 May 2017 18:31:29 +0300 Subject: [PATCH] when paused, do not update widget more than once a minute (unless finishing) --- .../java/org/fox/ttrss/MasterActivity.java | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/org.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java b/org.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java index 1c557df9..c7829b23 100644 --- a/org.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java +++ b/org.fox.ttrss/src/main/java/org/fox/ttrss/MasterActivity.java @@ -38,6 +38,7 @@ public class MasterActivity extends OnlineActivity implements HeadlinesEventList protected SharedPreferences m_prefs; protected long m_lastRefresh = 0; + protected long m_lastWidgetRefresh = 0; private boolean m_feedIsSelected = false; private boolean m_userFeedSelected = false; @@ -64,6 +65,8 @@ public class MasterActivity extends OnlineActivity implements HeadlinesEventList Application.getInstance().load(savedInstanceState); + m_lastWidgetRefresh = new Date().getTime(); + m_drawerLayout = (DrawerLayout) findViewById(R.id.headlines_drawer); if (m_drawerLayout != null) { @@ -476,11 +479,18 @@ public class MasterActivity extends OnlineActivity implements HeadlinesEventList } @Override - public void onStop() { - super.onStop(); + public void onPause() { + super.onPause(); + + Date date = new Date(); + + if (isFinishing() || date.getTime() - m_lastWidgetRefresh > 60*1000) { + m_lastWidgetRefresh = date.getTime(); + + Intent updateWidgetIntent = new Intent(SmallWidgetProvider.ACTION_REQUEST_UPDATE); + sendBroadcast(updateWidgetIntent); + } - Intent updateWidgetIntent = new Intent(SmallWidgetProvider.ACTION_REQUEST_UPDATE); - sendBroadcast(updateWidgetIntent); } @Override