bug fix, layout fix

This commit is contained in:
nuclearfog 2023-09-23 10:18:23 +02:00
parent f672ba130f
commit 3fdd67f0fb
No known key found for this signature in database
GPG Key ID: 03488A185C476379
6 changed files with 16 additions and 6 deletions

View File

@ -96,7 +96,7 @@ public class UsersActivity extends AppCompatActivity implements OnTabSelectedLis
/** /**
* regex pattern to validate username * regex pattern to validate username
*/ */
private static final Pattern USERNAME_PATTERN = Pattern.compile("@?\\w{1,15}"); private static final Pattern USERNAME_PATTERN = Pattern.compile("@?\\w+(@\\w+\\.\\w+)?");
private GlobalSettings settings; private GlobalSettings settings;
private UserFilterLoader filterLoader; private UserFilterLoader filterLoader;
@ -284,11 +284,7 @@ public class UsersActivity extends AppCompatActivity implements OnTabSelectedLis
Toast.makeText(getApplicationContext(), R.string.error_username_format, Toast.LENGTH_SHORT).show(); Toast.makeText(getApplicationContext(), R.string.error_username_format, Toast.LENGTH_SHORT).show();
} else if (viewPager.getCurrentItem() == 2) { } else if (viewPager.getCurrentItem() == 2) {
if (Patterns.WEB_URL.matcher(query).matches()) { if (Patterns.WEB_URL.matcher(query).matches()) {
FilterParam param; FilterParam param = new FilterParam(FilterParam.BLOCK_DOMAIN, Uri.parse(query).getHost());
if (query.startsWith("https://"))
param = new FilterParam(FilterParam.BLOCK_DOMAIN, Uri.parse(query).getHost());
else
param = new FilterParam(FilterParam.BLOCK_DOMAIN, query);
filterLoader.execute(param, this); filterLoader.execute(param, this);
return true; return true;
} }

View File

@ -12,6 +12,7 @@ import android.widget.Button;
import android.widget.CompoundButton; import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.CompoundButton.OnCheckedChangeListener;
import android.widget.Spinner; import android.widget.Spinner;
import android.widget.TextView;
import com.kyleduo.switchbutton.SwitchButton; import com.kyleduo.switchbutton.SwitchButton;
@ -22,6 +23,7 @@ import org.nuclearfog.twidda.config.GlobalSettings;
import org.nuclearfog.twidda.model.Status; import org.nuclearfog.twidda.model.Status;
import org.nuclearfog.twidda.ui.adapter.listview.DropdownAdapter; import org.nuclearfog.twidda.ui.adapter.listview.DropdownAdapter;
import java.util.Date;
import java.util.Locale; import java.util.Locale;
import java.util.Map; import java.util.Map;
import java.util.TreeMap; import java.util.TreeMap;
@ -35,6 +37,7 @@ public class StatusPreferenceDialog extends Dialog implements OnCheckedChangeLis
private Spinner visibilitySelector, languageSelector; private Spinner visibilitySelector, languageSelector;
private SwitchButton sensitiveCheck, spoilerCheck; private SwitchButton sensitiveCheck, spoilerCheck;
private TextView scheduleText;
private DropdownAdapter visibility_adapter, language_adapter; private DropdownAdapter visibility_adapter, language_adapter;
private TimePickerDialog timePicker; private TimePickerDialog timePicker;
@ -79,6 +82,7 @@ public class StatusPreferenceDialog extends Dialog implements OnCheckedChangeLis
visibilitySelector = findViewById(R.id.dialog_status_visibility); visibilitySelector = findViewById(R.id.dialog_status_visibility);
sensitiveCheck = findViewById(R.id.dialog_status_sensitive); sensitiveCheck = findViewById(R.id.dialog_status_sensitive);
spoilerCheck = findViewById(R.id.dialog_status_spoiler); spoilerCheck = findViewById(R.id.dialog_status_spoiler);
scheduleText = findViewById(R.id.dialog_status_time_set);
AppStyles.setTheme(rootView, settings.getPopupColor()); AppStyles.setTheme(rootView, settings.getPopupColor());
languageSelector.setAdapter(language_adapter); languageSelector.setAdapter(language_adapter);
@ -201,5 +205,10 @@ public class StatusPreferenceDialog extends Dialog implements OnCheckedChangeLis
@Override @Override
public void onTimeSelected(long time) { public void onTimeSelected(long time) {
statusUpdate.setScheduleTime(time); statusUpdate.setScheduleTime(time);
if (time != 0L) {
scheduleText.setText(new Date(time).toString());
} else {
scheduleText.setText("");
}
} }
} }

View File

@ -63,6 +63,7 @@ public class LockableConstraintLayout extends ConstraintLayout {
case MotionEvent.ACTION_CANCEL: case MotionEvent.ACTION_CANCEL:
case MotionEvent.ACTION_UP: case MotionEvent.ACTION_UP:
xLock = false; xLock = false;
yLock = false;
break; break;
} }
return yLock; return yLock;

View File

@ -130,6 +130,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="1" android:layout_weight="1"
android:lines="1" android:lines="1"
android:textSize="@dimen/dialog_status_textsize_default"
android:layout_marginStart="@dimen/dialog_status_layout_margins" android:layout_marginStart="@dimen/dialog_status_layout_margins"
android:layout_marginEnd="@dimen/dialog_status_layout_margins" /> android:layout_marginEnd="@dimen/dialog_status_layout_margins" />

View File

@ -40,6 +40,7 @@
android:text="@android:string/cancel" android:text="@android:string/cancel"
android:layout_margin="@dimen/dialog_timepicker_layout_margins" android:layout_margin="@dimen/dialog_timepicker_layout_margins"
android:padding="@dimen/dialog_timepicker_button_padding" android:padding="@dimen/dialog_timepicker_button_padding"
android:lines="1"
style="@style/FeedbackButton" /> style="@style/FeedbackButton" />
<Button <Button
@ -49,6 +50,7 @@
android:text="@android:string/ok" android:text="@android:string/ok"
android:layout_margin="@dimen/dialog_timepicker_layout_margins" android:layout_margin="@dimen/dialog_timepicker_layout_margins"
android:padding="@dimen/dialog_timepicker_button_padding" android:padding="@dimen/dialog_timepicker_button_padding"
android:lines="1"
style="@style/FeedbackButton" /> style="@style/FeedbackButton" />
</LinearLayout> </LinearLayout>

View File

@ -274,6 +274,7 @@
<!--dimens of dialog_status.xml--> <!--dimens of dialog_status.xml-->
<dimen name="dialog_status_textsize_title">20sp</dimen> <dimen name="dialog_status_textsize_title">20sp</dimen>
<dimen name="dialog_status_textsize_small">11sp</dimen> <dimen name="dialog_status_textsize_small">11sp</dimen>
<dimen name="dialog_status_textsize_default">13sp</dimen>
<dimen name="dialog_status_layout_padding">10dp</dimen> <dimen name="dialog_status_layout_padding">10dp</dimen>
<dimen name="dialog_status_layout_margins">5dp</dimen> <dimen name="dialog_status_layout_margins">5dp</dimen>
<dimen name="dialog_status_dropdown_height">28sp</dimen> <dimen name="dialog_status_dropdown_height">28sp</dimen>