Skip to content

Commit

Permalink
Merge pull request #198 from SecUSo/fix/add-missing-flag-to-pending-i…
Browse files Browse the repository at this point in the history
…ntent

Add missing flag to PendingIntent
  • Loading branch information
udenr authored Aug 23, 2022
2 parents 96c767e + 92792a2 commit 953cdee
Show file tree
Hide file tree
Showing 4 changed files with 35 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -79,13 +79,19 @@ public static void updateView(Context context, AppWidgetManager appWidgetManager
views.setTextViewText(R.id.widget_city_weather_wind, windSpeed);


boolean isDay = weatherData.getTimestamp() > weatherData.getTimeSunrise() && weatherData.getTimestamp() < weatherData.getTimeSunset();
boolean isDay = weatherData.getTimestamp() > weatherData.getTimeSunrise() && weatherData.getTimestamp() < weatherData.getTimeSunset();

views.setImageViewResource(R.id.widget_city_weather_image_view, UiResourceProvider.getIconResourceForWeatherCategory(weatherData.getWeatherID(), isDay));

Intent intent = new Intent(context, ForecastCityActivity.class);
intent.putExtra("cityId", city.getCityId());
PendingIntent pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);
PendingIntent pendingIntent;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, PendingIntent.FLAG_IMMUTABLE);
} else {
pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);
}

views.setOnClickPendingIntent(R.id.widget1day_layout, pendingIntent);

// Instruct the widget manager to update the widget
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@
import static org.secuso.privacyfriendlyweather.services.UpdateDataService.SKIP_UPDATE_INTERVAL;



/**
* Implementation of App Widget functionality.
* App Widget Configuration implemented in {@link WeatherWidgetConfigureActivity WeatherWidgetConfigureActivity}
Expand Down Expand Up @@ -101,13 +100,13 @@ public static void updateView(Context context, AppWidgetManager appWidgetManager
String extra5 = "";
//select extra information to display from settings
int extraInfo = prefManager.get5dayWidgetInfo();
if (extraInfo==1){
if (extraInfo == 1) {
extra1 = String.format("%s\u200amm", decimal1Format.format(data[0][7]));
extra2 = String.format("%s\u200amm", decimal1Format.format(data[1][7]));
extra3 = String.format("%s\u200amm", decimal1Format.format( data[2][7]));
extra3 = String.format("%s\u200amm", decimal1Format.format(data[2][7]));
extra4 = String.format("%s\u200amm", decimal1Format.format(data[3][7]));
extra5 = String.format("%s\u200amm", decimal1Format.format(data[4][7]));
} else if (extraInfo==2) {
} else if (extraInfo == 2) {
//wind max & min
extra1 = prefManager.convertToCurrentSpeedUnit(data[0][5]);
extra2 = prefManager.convertToCurrentSpeedUnit(data[1][5]);
Expand Down Expand Up @@ -149,7 +148,12 @@ public static void updateView(Context context, AppWidgetManager appWidgetManager

Intent intent = new Intent(context, ForecastCityActivity.class);
intent.putExtra("cityId", city.getCityId());
PendingIntent pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);
PendingIntent pendingIntent;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, PendingIntent.FLAG_IMMUTABLE);
} else {
pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);
}

views.setOnClickPendingIntent(R.id.widget5day_layout, pendingIntent);
// Instruct the widget manager to update the widget
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -89,13 +89,13 @@ public static void updateView(Context context, AppWidgetManager appWidgetManager
String extra5 = "";
//select extra information to display from settings
int extraInfo = prefManager.get1dayWidgetInfo();
if (extraInfo==1){
extra1 = String.format("%smm",decimal1Format.format(data[0][4]));
if (extraInfo == 1) {
extra1 = String.format("%smm", decimal1Format.format(data[0][4]));
extra2 = String.format("%smm", decimal1Format.format(data[1][4]));
extra3 = String.format("%smm", decimal1Format.format(data[2][4]));
extra4 = String.format("%smm", decimal1Format.format(data[3][4]));
extra5 = String.format("%smm", decimal1Format.format(data[4][4]));
} else if (extraInfo==2) {
} else if (extraInfo == 2) {
//wind max & min
extra1 = prefManager.convertToCurrentSpeedUnit(data[0][3]);
extra2 = prefManager.convertToCurrentSpeedUnit(data[1][3]);
Expand All @@ -111,8 +111,8 @@ public static void updateView(Context context, AppWidgetManager appWidgetManager
}


views.setTextViewText(R.id.widget_city_name, city.getCityName()+" "+ StringFormatUtils.formatTimeWithoutZone(timestamp));
Log.d("widgetOne timestamp",timestamp+"");
views.setTextViewText(R.id.widget_city_name, city.getCityName() + " " + StringFormatUtils.formatTimeWithoutZone(timestamp));
Log.d("widgetOne timestamp", timestamp + "");

views.setTextViewText(R.id.widget_city_weather_1day_temp1, temperature1);
views.setTextViewText(R.id.widget_city_weather_1day_temp2, temperature2);
Expand All @@ -133,7 +133,12 @@ public static void updateView(Context context, AppWidgetManager appWidgetManager

Intent intent = new Intent(context, ForecastCityActivity.class);
intent.putExtra("cityId", city.getCityId());
PendingIntent pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);
PendingIntent pendingIntent;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, PendingIntent.FLAG_IMMUTABLE);
} else {
pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);
}

views.setOnClickPendingIntent(R.id.widget1day_layout, pendingIntent);
// Instruct the widget manager to update the widget
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,13 @@ public static void updateView(Context context, AppWidgetManager appWidgetManager

Intent intent = new Intent(context, ForecastCityActivity.class);
intent.putExtra("cityId", city.getCityId());
PendingIntent pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);
PendingIntent pendingIntent;
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.M) {
pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, PendingIntent.FLAG_IMMUTABLE);
} else {
pendingIntent = PendingIntent.getActivity(context, appWidgetId, intent, 0);
}

views.setOnClickPendingIntent(R.id.widget3day_layout, pendingIntent);

// Instruct the widget manager to update the widget
Expand Down

0 comments on commit 953cdee

Please sign in to comment.