Skip to content

Commit

Permalink
2.603
Browse files Browse the repository at this point in the history
  • Loading branch information
wangdaye committed Feb 22, 2020
1 parent 375dacc commit 57e0844
Show file tree
Hide file tree
Showing 24 changed files with 5,175 additions and 4,498 deletions.
4 changes: 2 additions & 2 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ android {
applicationId "wangdaye.com.geometricweather"
minSdkVersion 19
targetSdkVersion 29 // 'R'
versionCode 2602
versionName "2.602"
versionCode 2603
versionName "2.603"
multiDexEnabled true
ndk {
abiFilters 'armeabi', 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a'
Expand Down
2 changes: 1 addition & 1 deletion app/release/output.json
Original file line number Diff line number Diff line change
@@ -1 +1 @@
[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":2602,"versionName":"2.602","enabled":true,"outputFile":"GeometricWeather 2.602.apk","fullName":"release","baseName":"release"},"path":"GeometricWeather 2.602.apk","properties":{}}]
[{"outputType":{"type":"APK"},"apkData":{"type":"MAIN","splits":[],"versionCode":2603,"versionName":"2.603","enabled":true,"outputFile":"GeometricWeather 2.603.apk","fullName":"release","baseName":"release"},"path":"GeometricWeather 2.603.apk","properties":{}}]
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,8 @@ public enum Language {
PORTUGUESE_BR("portuguese_brazilian", new Locale("pt", "BR")),
SLOVENIAN("slovenian", new Locale("sl", "SI")),
ARABIC("arabic", new Locale("ar")),
CZECH("czech", new Locale("cs"));
CZECH("czech", new Locale("cs")),
POLISH("polish", new Locale("pl"));

private String languageId;
private Locale locale;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -341,6 +341,9 @@ public static Language getLanguage(String value) {
case "czech":
return Language.CZECH;

case "polish":
return Language.POLISH;

default:
return Language.FOLLOW_SYSTEM;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@
import androidx.coordinatorlayout.widget.CoordinatorLayout;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager.widget.ViewPager;

import java.util.ArrayList;
Expand All @@ -27,6 +26,7 @@
import wangdaye.com.geometricweather.daily.adapter.DailyWeatherAdapter;
import wangdaye.com.geometricweather.db.DatabaseHelper;
import wangdaye.com.geometricweather.settings.SettingsOptionManager;
import wangdaye.com.geometricweather.ui.widget.insets.FitBottomSystemBarRecyclerView;
import wangdaye.com.geometricweather.ui.widget.insets.FitBottomSystemBarViewPager;
import wangdaye.com.geometricweather.utils.DisplayUtils;

Expand Down Expand Up @@ -104,7 +104,7 @@ private void initWidget() {
for (int i = 0; i < weather.getDailyForecast().size(); i ++) {
Daily d = weather.getDailyForecast().get(i);

RecyclerView recyclerView = new RecyclerView(this);
FitBottomSystemBarRecyclerView recyclerView = new FitBottomSystemBarRecyclerView(this);
recyclerView.setClipToPadding(false);
DailyWeatherAdapter dailyWeatherAdapter = new DailyWeatherAdapter(this, d, 3);
GridLayoutManager gridLayoutManager = new GridLayoutManager(this, 3);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@
import wangdaye.com.geometricweather.basic.model.location.Location;
import wangdaye.com.geometricweather.settings.SettingsOptionManager;
import wangdaye.com.geometricweather.ui.widget.insets.FitBottomSystemBarNestedScrollView;
import wangdaye.com.geometricweather.utils.DisplayUtils;
import wangdaye.com.geometricweather.utils.SnackbarUtils;
import wangdaye.com.geometricweather.db.DatabaseHelper;
import wangdaye.com.geometricweather.weather.WeatherHelper;
Expand Down Expand Up @@ -228,11 +229,21 @@ public void initView() {
this.widgetContainer = findViewById(R.id.activity_widget_config_widgetContainer);

this.topContainer = findViewById(R.id.activity_widget_config_top);
int screenWidth = getResources().getDisplayMetrics().widthPixels;
int adaptiveWidth = DisplayUtils.getTabletListAdaptiveWidth(this, screenWidth);
int paddingHorizontal = (screenWidth - adaptiveWidth) / 2;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT_WATCH) {
topContainer.setOnApplyWindowInsetsListener((v, insets) -> {
widgetContainer.setPadding(0, insets.getSystemWindowInsetTop(), 0, 0);
widgetContainer.setPadding(
Math.max(paddingHorizontal, insets.getSystemWindowInsetLeft()),
insets.getSystemWindowInsetTop(),
Math.max(paddingHorizontal, insets.getSystemWindowInsetRight()),
0
);
return insets;
});
} else {
widgetContainer.setPadding(paddingHorizontal, 0, paddingHorizontal, 0);
}

this.container = findViewById(R.id.activity_widget_config_container);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@
import wangdaye.com.geometricweather.remoteviews.trend.TrendLinearLayout;
import wangdaye.com.geometricweather.remoteviews.trend.WidgetItemView;
import wangdaye.com.geometricweather.ui.widget.weatherView.WeatherViewController;
import wangdaye.com.geometricweather.utils.DisplayUtils;
import wangdaye.com.geometricweather.utils.manager.ThreadManager;
import wangdaye.com.geometricweather.utils.manager.TimeManager;

Expand Down Expand Up @@ -60,7 +61,10 @@ private static void innerUpdateWidget(Context context, Location location) {
new ComponentName(context, WidgetTrendDailyProvider.class),
getRemoteViews(
context, location,
context.getResources().getDisplayMetrics().widthPixels,
DisplayUtils.getTabletListAdaptiveWidth(
context,
context.getResources().getDisplayMetrics().widthPixels
),
config.cardStyle, config.cardAlpha
)
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@
import wangdaye.com.geometricweather.remoteviews.trend.TrendLinearLayout;
import wangdaye.com.geometricweather.remoteviews.trend.WidgetItemView;
import wangdaye.com.geometricweather.ui.widget.weatherView.WeatherViewController;
import wangdaye.com.geometricweather.utils.DisplayUtils;
import wangdaye.com.geometricweather.utils.manager.ThreadManager;
import wangdaye.com.geometricweather.utils.manager.TimeManager;

Expand Down Expand Up @@ -58,7 +59,10 @@ private static void innerUpdateWidget(Context context, Location location) {
new ComponentName(context, WidgetTrendHourlyProvider.class),
getRemoteViews(
context, location,
context.getResources().getDisplayMetrics().widthPixels,
DisplayUtils.getTabletListAdaptiveWidth(
context,
context.getResources().getDisplayMetrics().widthPixels
),
config.cardStyle, config.cardAlpha
)
);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,9 @@

import wangdaye.com.geometricweather.R;
import wangdaye.com.geometricweather.basic.GeoActivity;
import wangdaye.com.geometricweather.basic.model.about.AboutAppLibrary;
import wangdaye.com.geometricweather.basic.model.about.AboutAppLink;
import wangdaye.com.geometricweather.basic.model.about.AboutAppTranslator;
import wangdaye.com.geometricweather.settings.model.AboutAppLibrary;
import wangdaye.com.geometricweather.settings.model.AboutAppLink;
import wangdaye.com.geometricweather.settings.model.AboutAppTranslator;
import wangdaye.com.geometricweather.utils.helpter.DonateHelper;
import wangdaye.com.geometricweather.utils.helpter.IntentHelper;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package wangdaye.com.geometricweather.basic.model.about;
package wangdaye.com.geometricweather.settings.model;

import android.content.Context;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package wangdaye.com.geometricweather.basic.model.about;
package wangdaye.com.geometricweather.settings.model;

import android.content.Context;

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package wangdaye.com.geometricweather.basic.model.about;
package wangdaye.com.geometricweather.settings.model;

import java.util.ArrayList;
import java.util.List;
Expand All @@ -22,7 +22,7 @@ private AboutAppTranslator(String name, String email, int flagResId) {
}

public static List<AboutAppTranslator> buildTranslatorList() {
List<AboutAppTranslator> list = new ArrayList<>(19);
List<AboutAppTranslator> list = new ArrayList<>(20);
list.add(new AboutAppTranslator(
"Mehmet Saygin Yilmaz",
"[email protected]",
Expand Down Expand Up @@ -118,6 +118,11 @@ public static List<AboutAppTranslator> buildTranslatorList() {
"[email protected]",
R.drawable.flag_cs
));
list.add(new AboutAppTranslator(
"Kamil",
"[email protected]",
R.drawable.flag_pl
));
return list;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,6 @@

import java.util.List;

import wangdaye.com.geometricweather.utils.DisplayUtils;

public class FitBottomSystemBarViewPager extends ViewPager {

private Rect windowInsets;
Expand All @@ -27,17 +25,11 @@ public static class FitBottomSystemBarPagerAdapter extends PagerAdapter {
private List<View> viewList;
public List<String> titleList;

private int screenWidth;
private int adaptiveWidth;

public FitBottomSystemBarPagerAdapter(FitBottomSystemBarViewPager pager,
List<View> viewList, List<String> titleList) {
this.pager = pager;
this.viewList = viewList;
this.titleList = titleList;

this.screenWidth = pager.getResources().getDisplayMetrics().widthPixels;
this.adaptiveWidth = DisplayUtils.getTabletListAdaptiveWidth(pager.getContext(), screenWidth);
}

@Override
Expand All @@ -53,14 +45,7 @@ public boolean isViewFromObject(@NonNull View view, @NonNull Object object) {
@NonNull
@Override
public Object instantiateItem(@NonNull ViewGroup container, int position) {
int paddingHorizontal = (screenWidth - adaptiveWidth) / 2;
Rect insets = pager.getWindowInsets();
viewList.get(position).setPadding(
Math.max(paddingHorizontal, insets.left),
0,
Math.max(paddingHorizontal, insets.right),
insets.bottom
);
setWindowInsetsForViewTree(viewList.get(position), pager.getWindowInsets());
container.addView(viewList.get(position));
return viewList.get(position);
}
Expand All @@ -74,6 +59,24 @@ public void destroyItem(@NonNull ViewGroup container, int position, @NonNull Obj
public CharSequence getPageTitle(int position) {
return titleList.get(position);
}

private void setWindowInsetsForViewTree(View view, Rect insets) {
setWindowInsets(view, insets);
if (view instanceof ViewGroup) {
int count = ((ViewGroup) view).getChildCount();
for (int i = 0; i < count; i ++) {
setWindowInsetsForViewTree(((ViewGroup) view).getChildAt(i), insets);
}
}
}

private void setWindowInsets(View view, Rect insets) {
if (view instanceof FitBottomSystemBarNestedScrollView) {
((FitBottomSystemBarNestedScrollView) view).fitSystemWindows(insets);
} else if (view instanceof FitBottomSystemBarRecyclerView) {
((FitBottomSystemBarRecyclerView) view).fitSystemWindows(insets);
}
}
}

public FitBottomSystemBarViewPager(@NonNull Context context) {
Expand Down
Binary file added app/src/main/res/drawable/flag_pl.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 57e0844

Please sign in to comment.