From 55dd33d04c8af6eb7e23ba7e12ecbf6f58475a16 Mon Sep 17 00:00:00 2001
From: Sergey <63193749+Hlebushek2020@users.noreply.github.com>
Date: Fri, 3 Jan 2025 12:40:55 +0300
Subject: [PATCH 1/4] 03/01/2025/12/40
---
app/build.gradle | 2 +-
build.gradle | 9 ++++-----
gradle/wrapper/gradle-wrapper.properties | 8 +++++---
3 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/app/build.gradle b/app/build.gradle
index 9d34ec5..2550bc1 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -4,6 +4,7 @@ plugins {
android {
compileSdk 32
+ namespace 'com.sergeygovorunov.imagecollection'
defaultConfig {
applicationId "com.sergeygovorunov.imagecollection"
@@ -11,7 +12,6 @@ android {
targetSdk 32
versionCode 1
versionName "0.1"
-
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
diff --git a/build.gradle b/build.gradle
index 7cbb664..0f26153 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,14 +1,13 @@
-// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
+ ext {
+ agp_version = '8.6.1'
+ }
repositories {
google()
mavenCentral()
}
dependencies {
- classpath "com.android.tools.build:gradle:7.0.3"
-
- // NOTE: Do not place your application dependencies here; they belong
- // in the individual module build.gradle files
+ classpath "com.android.tools.build:gradle:$agp_version"
}
}
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index fea00e4..4aab208 100644
--- a/gradle/wrapper/gradle-wrapper.properties
+++ b/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,8 @@
-#Sun Sep 18 17:23:38 MSK 2022
+#Sun Nov 10 20:02:18 MSK 2024
distributionBase=GRADLE_USER_HOME
-distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-bin.zip
distributionPath=wrapper/dists
-zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip
+networkTimeout=10000
+validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
+zipStorePath=wrapper/dists
\ No newline at end of file
From 2a7713c113dc57f13e483dcf19f1cd781e9ae72b Mon Sep 17 00:00:00 2001
From: Sergey <63193749+Hlebushek2020@users.noreply.github.com>
Date: Fri, 3 Jan 2025 12:56:13 +0300
Subject: [PATCH 2/4] 03/01/2025/12/56
---
.editorconfig | 995 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 995 insertions(+)
create mode 100644 .editorconfig
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..04621f8
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,995 @@
+[*]
+charset = utf-8
+end_of_line = crlf
+indent_size = 4
+indent_style = space
+insert_final_newline = false
+max_line_length = 100
+tab_width = 4
+ij_continuation_indent_size = 8
+ij_formatter_off_tag = @formatter:off
+ij_formatter_on_tag = @formatter:on
+ij_formatter_tags_enabled = true
+ij_smart_tabs = false
+ij_visual_guides =
+ij_wrap_on_typing = false
+
+[*.dcl]
+ij_declarative_keep_indents_on_empty_lines = false
+
+[*.java]
+ij_java_align_consecutive_assignments = false
+ij_java_align_consecutive_variable_declarations = false
+ij_java_align_group_field_declarations = false
+ij_java_align_multiline_annotation_parameters = false
+ij_java_align_multiline_array_initializer_expression = false
+ij_java_align_multiline_assignment = false
+ij_java_align_multiline_binary_operation = false
+ij_java_align_multiline_chained_methods = false
+ij_java_align_multiline_deconstruction_list_components = true
+ij_java_align_multiline_extends_list = false
+ij_java_align_multiline_for = true
+ij_java_align_multiline_method_parentheses = false
+ij_java_align_multiline_parameters = true
+ij_java_align_multiline_parameters_in_calls = false
+ij_java_align_multiline_parenthesized_expression = false
+ij_java_align_multiline_records = true
+ij_java_align_multiline_resources = true
+ij_java_align_multiline_ternary_operation = false
+ij_java_align_multiline_text_blocks = false
+ij_java_align_multiline_throws_list = false
+ij_java_align_subsequent_simple_methods = false
+ij_java_align_throws_keyword = false
+ij_java_align_types_in_multi_catch = true
+ij_java_annotation_parameter_wrap = off
+ij_java_array_initializer_new_line_after_left_brace = false
+ij_java_array_initializer_right_brace_on_new_line = false
+ij_java_array_initializer_wrap = off
+ij_java_assert_statement_colon_on_next_line = false
+ij_java_assert_statement_wrap = off
+ij_java_assignment_wrap = off
+ij_java_binary_operation_sign_on_next_line = false
+ij_java_binary_operation_wrap = off
+ij_java_blank_lines_after_anonymous_class_header = 0
+ij_java_blank_lines_after_class_header = 0
+ij_java_blank_lines_after_imports = 1
+ij_java_blank_lines_after_package = 1
+ij_java_blank_lines_around_class = 1
+ij_java_blank_lines_around_field = 0
+ij_java_blank_lines_around_field_in_interface = 0
+ij_java_blank_lines_around_initializer = 1
+ij_java_blank_lines_around_method = 1
+ij_java_blank_lines_around_method_in_interface = 1
+ij_java_blank_lines_before_class_end = 0
+ij_java_blank_lines_before_imports = 1
+ij_java_blank_lines_before_method_body = 0
+ij_java_blank_lines_before_package = 0
+ij_java_block_brace_style = end_of_line
+ij_java_block_comment_add_space = false
+ij_java_block_comment_at_first_column = true
+ij_java_builder_methods =
+ij_java_call_parameters_new_line_after_left_paren = false
+ij_java_call_parameters_right_paren_on_new_line = false
+ij_java_call_parameters_wrap = off
+ij_java_case_statement_on_separate_line = true
+ij_java_catch_on_new_line = false
+ij_java_class_annotation_wrap = split_into_lines
+ij_java_class_brace_style = end_of_line
+ij_java_class_count_to_use_import_on_demand = 99
+ij_java_class_names_in_javadoc = 1
+ij_java_deconstruction_list_wrap = normal
+ij_java_do_not_indent_top_level_class_members = false
+ij_java_do_not_wrap_after_single_annotation = false
+ij_java_do_not_wrap_after_single_annotation_in_parameter = false
+ij_java_do_while_brace_force = never
+ij_java_doc_add_blank_line_after_description = true
+ij_java_doc_add_blank_line_after_param_comments = false
+ij_java_doc_add_blank_line_after_return = false
+ij_java_doc_add_p_tag_on_empty_lines = true
+ij_java_doc_align_exception_comments = true
+ij_java_doc_align_param_comments = true
+ij_java_doc_do_not_wrap_if_one_line = false
+ij_java_doc_enable_formatting = true
+ij_java_doc_enable_leading_asterisks = true
+ij_java_doc_indent_on_continuation = false
+ij_java_doc_keep_empty_lines = true
+ij_java_doc_keep_empty_parameter_tag = true
+ij_java_doc_keep_empty_return_tag = true
+ij_java_doc_keep_empty_throws_tag = true
+ij_java_doc_keep_invalid_tags = true
+ij_java_doc_param_description_on_new_line = false
+ij_java_doc_preserve_line_breaks = false
+ij_java_doc_use_throws_not_exception_tag = true
+ij_java_else_on_new_line = false
+ij_java_enum_constants_wrap = off
+ij_java_enum_field_annotation_wrap = off
+ij_java_extends_keyword_wrap = off
+ij_java_extends_list_wrap = off
+ij_java_field_annotation_wrap = split_into_lines
+ij_java_field_name_prefix =
+ij_java_field_name_suffix =
+ij_java_finally_on_new_line = false
+ij_java_for_brace_force = never
+ij_java_for_statement_new_line_after_left_paren = false
+ij_java_for_statement_right_paren_on_new_line = false
+ij_java_for_statement_wrap = off
+ij_java_generate_final_locals = false
+ij_java_generate_final_parameters = false
+ij_java_generate_use_type_annotation_before_type = true
+ij_java_if_brace_force = never
+ij_java_imports_layout = $android.**, $androidx.**, $com.**, $junit.**, $net.**, $org.**, $java.**, $javax.**, $*, |, android.**, |, androidx.**, |, com.**, |, junit.**, |, net.**, |, org.**, |, java.**, |, javax.**, |, *, |
+ij_java_indent_case_from_switch = true
+ij_java_insert_inner_class_imports = false
+ij_java_insert_override_annotation = true
+ij_java_keep_blank_lines_before_right_brace = 2
+ij_java_keep_blank_lines_between_package_declaration_and_header = 2
+ij_java_keep_blank_lines_in_code = 2
+ij_java_keep_blank_lines_in_declarations = 2
+ij_java_keep_builder_methods_indents = false
+ij_java_keep_control_statement_in_one_line = true
+ij_java_keep_first_column_comment = true
+ij_java_keep_indents_on_empty_lines = false
+ij_java_keep_line_breaks = true
+ij_java_keep_multiple_expressions_in_one_line = false
+ij_java_keep_simple_blocks_in_one_line = false
+ij_java_keep_simple_classes_in_one_line = false
+ij_java_keep_simple_lambdas_in_one_line = false
+ij_java_keep_simple_methods_in_one_line = false
+ij_java_label_indent_absolute = false
+ij_java_label_indent_size = 0
+ij_java_lambda_brace_style = end_of_line
+ij_java_layout_static_imports_separately = true
+ij_java_line_comment_add_space = false
+ij_java_line_comment_add_space_on_reformat = false
+ij_java_line_comment_at_first_column = true
+ij_java_local_variable_name_prefix =
+ij_java_local_variable_name_suffix =
+ij_java_method_annotation_wrap = split_into_lines
+ij_java_method_brace_style = end_of_line
+ij_java_method_call_chain_wrap = off
+ij_java_method_parameters_new_line_after_left_paren = false
+ij_java_method_parameters_right_paren_on_new_line = false
+ij_java_method_parameters_wrap = off
+ij_java_modifier_list_wrap = false
+ij_java_multi_catch_types_wrap = normal
+ij_java_names_count_to_use_import_on_demand = 99
+ij_java_new_line_after_lparen_in_annotation = false
+ij_java_new_line_after_lparen_in_deconstruction_pattern = true
+ij_java_new_line_after_lparen_in_record_header = false
+ij_java_new_line_when_body_is_presented = false
+ij_java_packages_to_use_import_on_demand =
+ij_java_parameter_annotation_wrap = off
+ij_java_parameter_name_prefix =
+ij_java_parameter_name_suffix =
+ij_java_parentheses_expression_new_line_after_left_paren = false
+ij_java_parentheses_expression_right_paren_on_new_line = false
+ij_java_place_assignment_sign_on_next_line = false
+ij_java_prefer_longer_names = true
+ij_java_prefer_parameters_wrap = false
+ij_java_record_components_wrap = normal
+ij_java_repeat_annotations =
+ij_java_repeat_synchronized = true
+ij_java_replace_instanceof_and_cast = false
+ij_java_replace_null_check = true
+ij_java_replace_sum_lambda_with_method_ref = true
+ij_java_resource_list_new_line_after_left_paren = false
+ij_java_resource_list_right_paren_on_new_line = false
+ij_java_resource_list_wrap = off
+ij_java_rparen_on_new_line_in_annotation = false
+ij_java_rparen_on_new_line_in_deconstruction_pattern = true
+ij_java_rparen_on_new_line_in_record_header = false
+ij_java_space_after_closing_angle_bracket_in_type_argument = false
+ij_java_space_after_colon = true
+ij_java_space_after_comma = true
+ij_java_space_after_comma_in_type_arguments = true
+ij_java_space_after_for_semicolon = true
+ij_java_space_after_quest = true
+ij_java_space_after_type_cast = true
+ij_java_space_before_annotation_array_initializer_left_brace = false
+ij_java_space_before_annotation_parameter_list = false
+ij_java_space_before_array_initializer_left_brace = false
+ij_java_space_before_catch_keyword = true
+ij_java_space_before_catch_left_brace = true
+ij_java_space_before_catch_parentheses = true
+ij_java_space_before_class_left_brace = true
+ij_java_space_before_colon = true
+ij_java_space_before_colon_in_foreach = true
+ij_java_space_before_comma = false
+ij_java_space_before_deconstruction_list = false
+ij_java_space_before_do_left_brace = true
+ij_java_space_before_else_keyword = true
+ij_java_space_before_else_left_brace = true
+ij_java_space_before_finally_keyword = true
+ij_java_space_before_finally_left_brace = true
+ij_java_space_before_for_left_brace = true
+ij_java_space_before_for_parentheses = true
+ij_java_space_before_for_semicolon = false
+ij_java_space_before_if_left_brace = true
+ij_java_space_before_if_parentheses = true
+ij_java_space_before_method_call_parentheses = false
+ij_java_space_before_method_left_brace = true
+ij_java_space_before_method_parentheses = false
+ij_java_space_before_opening_angle_bracket_in_type_parameter = false
+ij_java_space_before_quest = true
+ij_java_space_before_switch_left_brace = true
+ij_java_space_before_switch_parentheses = true
+ij_java_space_before_synchronized_left_brace = true
+ij_java_space_before_synchronized_parentheses = true
+ij_java_space_before_try_left_brace = true
+ij_java_space_before_try_parentheses = true
+ij_java_space_before_type_parameter_list = false
+ij_java_space_before_while_keyword = true
+ij_java_space_before_while_left_brace = true
+ij_java_space_before_while_parentheses = true
+ij_java_space_inside_one_line_enum_braces = false
+ij_java_space_within_empty_array_initializer_braces = false
+ij_java_space_within_empty_method_call_parentheses = false
+ij_java_space_within_empty_method_parentheses = false
+ij_java_spaces_around_additive_operators = true
+ij_java_spaces_around_annotation_eq = true
+ij_java_spaces_around_assignment_operators = true
+ij_java_spaces_around_bitwise_operators = true
+ij_java_spaces_around_equality_operators = true
+ij_java_spaces_around_lambda_arrow = true
+ij_java_spaces_around_logical_operators = true
+ij_java_spaces_around_method_ref_dbl_colon = false
+ij_java_spaces_around_multiplicative_operators = true
+ij_java_spaces_around_relational_operators = true
+ij_java_spaces_around_shift_operators = true
+ij_java_spaces_around_type_bounds_in_type_parameters = true
+ij_java_spaces_around_unary_operator = false
+ij_java_spaces_inside_block_braces_when_body_is_present = false
+ij_java_spaces_within_angle_brackets = false
+ij_java_spaces_within_annotation_parentheses = false
+ij_java_spaces_within_array_initializer_braces = false
+ij_java_spaces_within_braces = false
+ij_java_spaces_within_brackets = false
+ij_java_spaces_within_cast_parentheses = false
+ij_java_spaces_within_catch_parentheses = false
+ij_java_spaces_within_deconstruction_list = false
+ij_java_spaces_within_for_parentheses = false
+ij_java_spaces_within_if_parentheses = false
+ij_java_spaces_within_method_call_parentheses = false
+ij_java_spaces_within_method_parentheses = false
+ij_java_spaces_within_parentheses = false
+ij_java_spaces_within_record_header = false
+ij_java_spaces_within_switch_parentheses = false
+ij_java_spaces_within_synchronized_parentheses = false
+ij_java_spaces_within_try_parentheses = false
+ij_java_spaces_within_while_parentheses = false
+ij_java_special_else_if_treatment = true
+ij_java_static_field_name_prefix =
+ij_java_static_field_name_suffix =
+ij_java_subclass_name_prefix =
+ij_java_subclass_name_suffix = Impl
+ij_java_switch_expressions_wrap = normal
+ij_java_ternary_operation_signs_on_next_line = false
+ij_java_ternary_operation_wrap = off
+ij_java_test_name_prefix =
+ij_java_test_name_suffix = Test
+ij_java_throws_keyword_wrap = off
+ij_java_throws_list_wrap = off
+ij_java_use_external_annotations = false
+ij_java_use_fq_class_names = false
+ij_java_use_relative_indents = false
+ij_java_use_single_class_imports = true
+ij_java_variable_annotation_wrap = off
+ij_java_visibility = public
+ij_java_while_brace_force = never
+ij_java_while_on_new_line = false
+ij_java_wrap_comments = false
+ij_java_wrap_first_method_in_call_chain = false
+ij_java_wrap_long_lines = false
+ij_java_wrap_semicolon_after_call_chain = false
+
+[*.properties]
+ij_properties_align_group_field_declarations = false
+ij_properties_keep_blank_lines = false
+ij_properties_key_value_delimiter = equals
+ij_properties_spaces_around_key_value_delimiter = false
+
+[.editorconfig]
+ij_editorconfig_align_group_field_declarations = false
+ij_editorconfig_space_after_colon = false
+ij_editorconfig_space_after_comma = true
+ij_editorconfig_space_before_colon = false
+ij_editorconfig_space_before_comma = false
+ij_editorconfig_spaces_around_assignment_operators = true
+
+[{*.ant,*.fxml,*.jhm,*.jnlp,*.jrxml,*.rng,*.tld,*.wsdl,*.xml,*.xsd,*.xsl,*.xslt,*.xul}]
+ij_continuation_indent_size = 4
+ij_xml_align_attributes = false
+ij_xml_align_text = false
+ij_xml_attribute_wrap = normal
+ij_xml_block_comment_add_space = false
+ij_xml_block_comment_at_first_column = true
+ij_xml_keep_blank_lines = 2
+ij_xml_keep_indents_on_empty_lines = false
+ij_xml_keep_line_breaks = false
+ij_xml_keep_line_breaks_in_text = true
+ij_xml_keep_whitespaces = false
+ij_xml_keep_whitespaces_around_cdata = preserve
+ij_xml_keep_whitespaces_inside_cdata = false
+ij_xml_line_comment_at_first_column = true
+ij_xml_space_after_tag_name = false
+ij_xml_space_around_equals_in_attribute = false
+ij_xml_space_inside_empty_tag = true
+ij_xml_text_wrap = normal
+ij_xml_use_custom_settings = true
+
+[{*.apinotes,*.yaml,*.yml,.clang-format,.clang-tidy,_clang-format}]
+indent_size = 2
+ij_yaml_align_values_properties = do_not_align
+ij_yaml_autoinsert_sequence_marker = true
+ij_yaml_block_mapping_on_new_line = false
+ij_yaml_indent_sequence_value = true
+ij_yaml_keep_indents_on_empty_lines = false
+ij_yaml_keep_line_breaks = true
+ij_yaml_line_comment_add_space = false
+ij_yaml_line_comment_add_space_on_reformat = false
+ij_yaml_line_comment_at_first_column = true
+ij_yaml_sequence_on_new_line = false
+ij_yaml_space_before_colon = false
+ij_yaml_spaces_within_braces = true
+ij_yaml_spaces_within_brackets = true
+
+[{*.bash,*.sh,*.zsh}]
+indent_size = 2
+tab_width = 2
+ij_shell_binary_ops_start_line = false
+ij_shell_keep_column_alignment_padding = false
+ij_shell_minify_program = false
+ij_shell_redirect_followed_by_space = false
+ij_shell_switch_cases_indented = false
+ij_shell_use_unix_line_separator = true
+
+[{*.c,*.c++,*.c++m,*.cc,*.ccm,*.cp,*.cpp,*.cppm,*.cu,*.cuh,*.cxx,*.cxxm,*.h,*.h++,*.hh,*.hp,*.hpp,*.hxx,*.i,*.icc,*.ii,*.inl,*.ino,*.ipp,*.ixx,*.m,*.mm,*.mxx,*.pch,*.tcc,*.tpp}]
+ij_c_add_brief_tag = false
+ij_c_add_getter_prefix = true
+ij_c_add_setter_prefix = true
+ij_c_align_dictionary_pair_values = false
+ij_c_align_group_field_declarations = false
+ij_c_align_init_list_in_columns = true
+ij_c_align_multiline_array_initializer_expression = true
+ij_c_align_multiline_assignment = true
+ij_c_align_multiline_binary_operation = true
+ij_c_align_multiline_chained_methods = false
+ij_c_align_multiline_for = true
+ij_c_align_multiline_ternary_operation = true
+ij_c_array_initializer_comma_on_next_line = false
+ij_c_array_initializer_new_line_after_left_brace = false
+ij_c_array_initializer_right_brace_on_new_line = false
+ij_c_array_initializer_wrap = normal
+ij_c_assignment_wrap = off
+ij_c_binary_operation_sign_on_next_line = false
+ij_c_binary_operation_wrap = normal
+ij_c_blank_lines_after_class_header = 0
+ij_c_blank_lines_after_imports = 1
+ij_c_blank_lines_around_class = 1
+ij_c_blank_lines_around_field = 0
+ij_c_blank_lines_around_field_in_interface = 0
+ij_c_blank_lines_around_method = 1
+ij_c_blank_lines_around_method_in_interface = 1
+ij_c_blank_lines_around_namespace = 0
+ij_c_blank_lines_around_properties_in_declaration = 0
+ij_c_blank_lines_around_properties_in_interface = 0
+ij_c_blank_lines_before_imports = 1
+ij_c_blank_lines_before_method_body = 0
+ij_c_block_brace_placement = end_of_line
+ij_c_block_brace_style = end_of_line
+ij_c_block_comment_at_first_column = true
+ij_c_catch_on_new_line = false
+ij_c_class_brace_style = end_of_line
+ij_c_class_constructor_init_list_align_multiline = true
+ij_c_class_constructor_init_list_comma_on_next_line = false
+ij_c_class_constructor_init_list_new_line_after_colon = never
+ij_c_class_constructor_init_list_new_line_before_colon = if_long
+ij_c_class_constructor_init_list_wrap = normal
+ij_c_copy_is_deep = false
+ij_c_create_interface_for_categories = true
+ij_c_declare_generated_methods = true
+ij_c_description_include_member_names = true
+ij_c_discharged_short_ternary_operator = false
+ij_c_do_not_add_breaks = false
+ij_c_do_while_brace_force = never
+ij_c_else_on_new_line = false
+ij_c_enum_constants_comma_on_next_line = false
+ij_c_enum_constants_wrap = on_every_item
+ij_c_for_brace_force = never
+ij_c_for_statement_new_line_after_left_paren = false
+ij_c_for_statement_right_paren_on_new_line = false
+ij_c_for_statement_wrap = off
+ij_c_function_brace_placement = end_of_line
+ij_c_function_call_arguments_align_multiline = true
+ij_c_function_call_arguments_align_multiline_pars = false
+ij_c_function_call_arguments_comma_on_next_line = false
+ij_c_function_call_arguments_new_line_after_lpar = false
+ij_c_function_call_arguments_new_line_before_rpar = false
+ij_c_function_call_arguments_wrap = normal
+ij_c_function_non_top_after_return_type_wrap = normal
+ij_c_function_parameters_align_multiline = true
+ij_c_function_parameters_align_multiline_pars = false
+ij_c_function_parameters_comma_on_next_line = false
+ij_c_function_parameters_new_line_after_lpar = false
+ij_c_function_parameters_new_line_before_rpar = false
+ij_c_function_parameters_wrap = normal
+ij_c_function_top_after_return_type_wrap = normal
+ij_c_generate_additional_eq_operators = true
+ij_c_generate_additional_rel_operators = true
+ij_c_generate_class_constructor = true
+ij_c_generate_comparison_operators_use_std_tie = false
+ij_c_generate_instance_variables_for_properties = ask
+ij_c_generate_operators_as_members = true
+ij_c_header_guard_style_pattern = ${PROJECT_NAME}_${FILE_NAME}_${EXT}
+ij_c_if_brace_force = never
+ij_c_in_line_short_ternary_operator = true
+ij_c_indent_block_comment = true
+ij_c_indent_c_struct_members = 4
+ij_c_indent_case_from_switch = true
+ij_c_indent_class_members = 4
+ij_c_indent_directive_as_code = false
+ij_c_indent_implementation_members = 0
+ij_c_indent_inside_code_block = 4
+ij_c_indent_interface_members = 0
+ij_c_indent_interface_members_except_ivars_block = false
+ij_c_indent_namespace_members = 4
+ij_c_indent_preprocessor_directive = 0
+ij_c_indent_visibility_keywords = 0
+ij_c_insert_override = true
+ij_c_insert_virtual_with_override = false
+ij_c_introduce_auto_consts = false
+ij_c_introduce_auto_vars = false
+ij_c_introduce_const_params = false
+ij_c_introduce_const_vars = false
+ij_c_introduce_constexpr_consts = false
+ij_c_introduce_generate_property = false
+ij_c_introduce_generate_synthesize = true
+ij_c_introduce_globals_to_header = true
+ij_c_introduce_prop_to_private_category = false
+ij_c_introduce_static_consts = true
+ij_c_introduce_use_ns_types = false
+ij_c_ivars_prefix = _
+ij_c_ivars_suffix =
+ij_c_keep_blank_lines_before_end = 2
+ij_c_keep_blank_lines_before_right_brace = 2
+ij_c_keep_blank_lines_in_code = 2
+ij_c_keep_blank_lines_in_declarations = 2
+ij_c_keep_case_expressions_in_one_line = false
+ij_c_keep_control_statement_in_one_line = true
+ij_c_keep_directive_at_first_column = true
+ij_c_keep_first_column_comment = true
+ij_c_keep_line_breaks = true
+ij_c_keep_nested_namespaces_in_one_line = false
+ij_c_keep_simple_blocks_in_one_line = true
+ij_c_keep_simple_methods_in_one_line = true
+ij_c_keep_structures_in_one_line = false
+ij_c_lambda_capture_list_align_multiline = false
+ij_c_lambda_capture_list_align_multiline_bracket = false
+ij_c_lambda_capture_list_comma_on_next_line = false
+ij_c_lambda_capture_list_new_line_after_lbracket = false
+ij_c_lambda_capture_list_new_line_before_rbracket = false
+ij_c_lambda_capture_list_wrap = off
+ij_c_line_comment_add_space = false
+ij_c_line_comment_at_first_column = true
+ij_c_method_brace_placement = end_of_line
+ij_c_method_call_arguments_align_by_colons = true
+ij_c_method_call_arguments_align_multiline = false
+ij_c_method_call_arguments_special_dictionary_pairs_treatment = true
+ij_c_method_call_arguments_wrap = off
+ij_c_method_call_chain_wrap = off
+ij_c_method_parameters_align_by_colons = true
+ij_c_method_parameters_align_multiline = false
+ij_c_method_parameters_wrap = off
+ij_c_namespace_brace_placement = end_of_line
+ij_c_parentheses_expression_new_line_after_left_paren = false
+ij_c_parentheses_expression_right_paren_on_new_line = false
+ij_c_place_assignment_sign_on_next_line = false
+ij_c_property_nonatomic = true
+ij_c_put_ivars_to_implementation = true
+ij_c_refactor_compatibility_aliases_and_classes = true
+ij_c_refactor_properties_and_ivars = true
+ij_c_release_style = ivar
+ij_c_retain_object_parameters_in_constructor = true
+ij_c_semicolon_after_method_signature = false
+ij_c_shift_operation_align_multiline = true
+ij_c_shift_operation_wrap = normal
+ij_c_show_non_virtual_functions = false
+ij_c_space_after_colon = true
+ij_c_space_after_colon_in_foreach = true
+ij_c_space_after_colon_in_selector = false
+ij_c_space_after_comma = true
+ij_c_space_after_cup_in_blocks = false
+ij_c_space_after_dictionary_literal_colon = true
+ij_c_space_after_for_semicolon = true
+ij_c_space_after_init_list_colon = true
+ij_c_space_after_method_parameter_type_parentheses = false
+ij_c_space_after_method_return_type_parentheses = false
+ij_c_space_after_pointer_in_declaration = false
+ij_c_space_after_quest = true
+ij_c_space_after_reference_in_declaration = false
+ij_c_space_after_reference_in_rvalue = false
+ij_c_space_after_structures_rbrace = true
+ij_c_space_after_superclass_colon = true
+ij_c_space_after_type_cast = true
+ij_c_space_after_visibility_sign_in_method_declaration = true
+ij_c_space_before_autorelease_pool_lbrace = true
+ij_c_space_before_catch_keyword = true
+ij_c_space_before_catch_left_brace = true
+ij_c_space_before_catch_parentheses = true
+ij_c_space_before_category_parentheses = true
+ij_c_space_before_chained_send_message = true
+ij_c_space_before_class_left_brace = true
+ij_c_space_before_colon = true
+ij_c_space_before_colon_in_foreach = false
+ij_c_space_before_comma = false
+ij_c_space_before_dictionary_literal_colon = false
+ij_c_space_before_do_left_brace = true
+ij_c_space_before_else_keyword = true
+ij_c_space_before_else_left_brace = true
+ij_c_space_before_export_lbrace = true
+ij_c_space_before_for_left_brace = true
+ij_c_space_before_for_parentheses = true
+ij_c_space_before_for_semicolon = false
+ij_c_space_before_if_left_brace = true
+ij_c_space_before_if_parentheses = true
+ij_c_space_before_init_list = false
+ij_c_space_before_init_list_colon = true
+ij_c_space_before_method_call_parentheses = false
+ij_c_space_before_method_left_brace = true
+ij_c_space_before_method_parentheses = false
+ij_c_space_before_namespace_lbrace = true
+ij_c_space_before_pointer_in_declaration = true
+ij_c_space_before_property_attributes_parentheses = false
+ij_c_space_before_protocols_brackets = true
+ij_c_space_before_quest = true
+ij_c_space_before_reference_in_declaration = true
+ij_c_space_before_superclass_colon = true
+ij_c_space_before_switch_left_brace = true
+ij_c_space_before_switch_parentheses = true
+ij_c_space_before_template_call_lt = false
+ij_c_space_before_template_declaration_lt = false
+ij_c_space_before_try_left_brace = true
+ij_c_space_before_while_keyword = true
+ij_c_space_before_while_left_brace = true
+ij_c_space_before_while_parentheses = true
+ij_c_space_between_adjacent_brackets = false
+ij_c_space_between_operator_and_punctuator = false
+ij_c_space_within_empty_array_initializer_braces = false
+ij_c_spaces_around_additive_operators = true
+ij_c_spaces_around_assignment_operators = true
+ij_c_spaces_around_bitwise_operators = true
+ij_c_spaces_around_equality_operators = true
+ij_c_spaces_around_lambda_arrow = true
+ij_c_spaces_around_logical_operators = true
+ij_c_spaces_around_multiplicative_operators = true
+ij_c_spaces_around_pm_operators = false
+ij_c_spaces_around_relational_operators = true
+ij_c_spaces_around_shift_operators = true
+ij_c_spaces_around_unary_operator = false
+ij_c_spaces_within_array_initializer_braces = false
+ij_c_spaces_within_braces = true
+ij_c_spaces_within_brackets = false
+ij_c_spaces_within_cast_parentheses = false
+ij_c_spaces_within_catch_parentheses = false
+ij_c_spaces_within_category_parentheses = false
+ij_c_spaces_within_empty_braces = false
+ij_c_spaces_within_empty_function_call_parentheses = false
+ij_c_spaces_within_empty_function_declaration_parentheses = false
+ij_c_spaces_within_empty_lambda_capture_list_bracket = false
+ij_c_spaces_within_empty_template_call_ltgt = false
+ij_c_spaces_within_empty_template_declaration_ltgt = false
+ij_c_spaces_within_for_parentheses = false
+ij_c_spaces_within_function_call_parentheses = false
+ij_c_spaces_within_function_declaration_parentheses = false
+ij_c_spaces_within_if_parentheses = false
+ij_c_spaces_within_lambda_capture_list_bracket = false
+ij_c_spaces_within_method_parameter_type_parentheses = false
+ij_c_spaces_within_method_return_type_parentheses = false
+ij_c_spaces_within_parentheses = false
+ij_c_spaces_within_property_attributes_parentheses = false
+ij_c_spaces_within_protocols_brackets = false
+ij_c_spaces_within_send_message_brackets = false
+ij_c_spaces_within_structured_binding_list_bracket = false
+ij_c_spaces_within_switch_parentheses = false
+ij_c_spaces_within_template_call_ltgt = false
+ij_c_spaces_within_template_declaration_ltgt = false
+ij_c_spaces_within_template_double_gt = true
+ij_c_spaces_within_while_parentheses = false
+ij_c_special_else_if_treatment = true
+ij_c_structured_binding_list_align_multiline = false
+ij_c_structured_binding_list_align_multiline_bracket = false
+ij_c_structured_binding_list_comma_on_next_line = false
+ij_c_structured_binding_list_new_line_after_lbracket = false
+ij_c_structured_binding_list_new_line_before_rbracket = false
+ij_c_structured_binding_list_wrap = off
+ij_c_superclass_list_after_colon = never
+ij_c_superclass_list_align_multiline = true
+ij_c_superclass_list_before_colon = if_long
+ij_c_superclass_list_comma_on_next_line = false
+ij_c_superclass_list_wrap = on_every_item
+ij_c_tag_prefix_of_block_comment = at
+ij_c_tag_prefix_of_line_comment = back_slash
+ij_c_template_call_arguments_align_multiline = false
+ij_c_template_call_arguments_align_multiline_pars = false
+ij_c_template_call_arguments_comma_on_next_line = false
+ij_c_template_call_arguments_new_line_after_lt = false
+ij_c_template_call_arguments_new_line_before_gt = false
+ij_c_template_call_arguments_wrap = off
+ij_c_template_declaration_function_body_indent = false
+ij_c_template_declaration_function_wrap = split_into_lines
+ij_c_template_declaration_struct_body_indent = false
+ij_c_template_declaration_struct_wrap = split_into_lines
+ij_c_template_parameters_align_multiline = false
+ij_c_template_parameters_align_multiline_pars = false
+ij_c_template_parameters_comma_on_next_line = false
+ij_c_template_parameters_new_line_after_lt = false
+ij_c_template_parameters_new_line_before_gt = false
+ij_c_template_parameters_wrap = off
+ij_c_ternary_operation_signs_on_next_line = true
+ij_c_ternary_operation_wrap = normal
+ij_c_type_qualifiers_placement = before
+ij_c_use_modern_casts = true
+ij_c_use_setters_in_constructor = true
+ij_c_while_brace_force = never
+ij_c_while_on_new_line = false
+ij_c_wrap_property_declaration = off
+
+[{*.cmake,CMakeLists.txt}]
+ij_cmake_align_command_call_r_par = false
+ij_cmake_align_control_flow_r_par = false
+ij_cmake_align_multiline_parameters_in_calls = false
+ij_cmake_force_commands_case = 2
+ij_cmake_keep_blank_lines_in_code = 2
+ij_cmake_space_before_for_parentheses = true
+ij_cmake_space_before_if_parentheses = true
+ij_cmake_space_before_method_call_parentheses = false
+ij_cmake_space_before_method_parentheses = false
+ij_cmake_space_before_while_parentheses = true
+ij_cmake_spaces_within_for_parentheses = false
+ij_cmake_spaces_within_if_parentheses = false
+ij_cmake_spaces_within_method_call_parentheses = false
+ij_cmake_spaces_within_method_parentheses = false
+ij_cmake_spaces_within_while_parentheses = false
+
+[{*.gant,*.groovy,*.gy}]
+ij_groovy_align_group_field_declarations = false
+ij_groovy_align_multiline_array_initializer_expression = false
+ij_groovy_align_multiline_assignment = false
+ij_groovy_align_multiline_binary_operation = false
+ij_groovy_align_multiline_chained_methods = false
+ij_groovy_align_multiline_extends_list = false
+ij_groovy_align_multiline_for = true
+ij_groovy_align_multiline_list_or_map = true
+ij_groovy_align_multiline_method_parentheses = false
+ij_groovy_align_multiline_parameters = true
+ij_groovy_align_multiline_parameters_in_calls = false
+ij_groovy_align_multiline_resources = true
+ij_groovy_align_multiline_ternary_operation = false
+ij_groovy_align_multiline_throws_list = false
+ij_groovy_align_named_args_in_map = true
+ij_groovy_align_throws_keyword = false
+ij_groovy_array_initializer_new_line_after_left_brace = false
+ij_groovy_array_initializer_right_brace_on_new_line = false
+ij_groovy_array_initializer_wrap = off
+ij_groovy_assert_statement_wrap = off
+ij_groovy_assignment_wrap = off
+ij_groovy_binary_operation_wrap = off
+ij_groovy_blank_lines_after_class_header = 0
+ij_groovy_blank_lines_after_imports = 1
+ij_groovy_blank_lines_after_package = 1
+ij_groovy_blank_lines_around_class = 1
+ij_groovy_blank_lines_around_field = 0
+ij_groovy_blank_lines_around_field_in_interface = 0
+ij_groovy_blank_lines_around_method = 1
+ij_groovy_blank_lines_around_method_in_interface = 1
+ij_groovy_blank_lines_before_imports = 1
+ij_groovy_blank_lines_before_method_body = 0
+ij_groovy_blank_lines_before_package = 0
+ij_groovy_block_brace_style = end_of_line
+ij_groovy_block_comment_add_space = false
+ij_groovy_block_comment_at_first_column = true
+ij_groovy_call_parameters_new_line_after_left_paren = false
+ij_groovy_call_parameters_right_paren_on_new_line = false
+ij_groovy_call_parameters_wrap = off
+ij_groovy_catch_on_new_line = false
+ij_groovy_class_annotation_wrap = split_into_lines
+ij_groovy_class_brace_style = end_of_line
+ij_groovy_class_count_to_use_import_on_demand = 5
+ij_groovy_do_while_brace_force = never
+ij_groovy_else_on_new_line = false
+ij_groovy_enable_groovydoc_formatting = true
+ij_groovy_enum_constants_wrap = off
+ij_groovy_extends_keyword_wrap = off
+ij_groovy_extends_list_wrap = off
+ij_groovy_field_annotation_wrap = split_into_lines
+ij_groovy_finally_on_new_line = false
+ij_groovy_for_brace_force = never
+ij_groovy_for_statement_new_line_after_left_paren = false
+ij_groovy_for_statement_right_paren_on_new_line = false
+ij_groovy_for_statement_wrap = off
+ij_groovy_ginq_general_clause_wrap_policy = 2
+ij_groovy_ginq_having_wrap_policy = 1
+ij_groovy_ginq_indent_having_clause = true
+ij_groovy_ginq_indent_on_clause = true
+ij_groovy_ginq_on_wrap_policy = 1
+ij_groovy_ginq_space_after_keyword = true
+ij_groovy_if_brace_force = never
+ij_groovy_import_annotation_wrap = 2
+ij_groovy_imports_layout = *, |, javax.**, java.**, |, $*
+ij_groovy_indent_case_from_switch = true
+ij_groovy_indent_label_blocks = true
+ij_groovy_insert_inner_class_imports = false
+ij_groovy_keep_blank_lines_before_right_brace = 2
+ij_groovy_keep_blank_lines_in_code = 2
+ij_groovy_keep_blank_lines_in_declarations = 2
+ij_groovy_keep_control_statement_in_one_line = true
+ij_groovy_keep_first_column_comment = true
+ij_groovy_keep_indents_on_empty_lines = false
+ij_groovy_keep_line_breaks = true
+ij_groovy_keep_multiple_expressions_in_one_line = false
+ij_groovy_keep_simple_blocks_in_one_line = false
+ij_groovy_keep_simple_classes_in_one_line = true
+ij_groovy_keep_simple_lambdas_in_one_line = true
+ij_groovy_keep_simple_methods_in_one_line = true
+ij_groovy_label_indent_absolute = false
+ij_groovy_label_indent_size = 0
+ij_groovy_lambda_brace_style = end_of_line
+ij_groovy_layout_static_imports_separately = true
+ij_groovy_line_comment_add_space = false
+ij_groovy_line_comment_add_space_on_reformat = false
+ij_groovy_line_comment_at_first_column = true
+ij_groovy_method_annotation_wrap = split_into_lines
+ij_groovy_method_brace_style = end_of_line
+ij_groovy_method_call_chain_wrap = off
+ij_groovy_method_parameters_new_line_after_left_paren = false
+ij_groovy_method_parameters_right_paren_on_new_line = false
+ij_groovy_method_parameters_wrap = off
+ij_groovy_modifier_list_wrap = false
+ij_groovy_names_count_to_use_import_on_demand = 3
+ij_groovy_packages_to_use_import_on_demand = java.awt.*, javax.swing.*
+ij_groovy_parameter_annotation_wrap = off
+ij_groovy_parentheses_expression_new_line_after_left_paren = false
+ij_groovy_parentheses_expression_right_paren_on_new_line = false
+ij_groovy_prefer_parameters_wrap = false
+ij_groovy_resource_list_new_line_after_left_paren = false
+ij_groovy_resource_list_right_paren_on_new_line = false
+ij_groovy_resource_list_wrap = off
+ij_groovy_space_after_assert_separator = true
+ij_groovy_space_after_colon = true
+ij_groovy_space_after_comma = true
+ij_groovy_space_after_comma_in_type_arguments = true
+ij_groovy_space_after_for_semicolon = true
+ij_groovy_space_after_quest = true
+ij_groovy_space_after_type_cast = true
+ij_groovy_space_before_annotation_parameter_list = false
+ij_groovy_space_before_array_initializer_left_brace = false
+ij_groovy_space_before_assert_separator = false
+ij_groovy_space_before_catch_keyword = true
+ij_groovy_space_before_catch_left_brace = true
+ij_groovy_space_before_catch_parentheses = true
+ij_groovy_space_before_class_left_brace = true
+ij_groovy_space_before_closure_left_brace = true
+ij_groovy_space_before_colon = true
+ij_groovy_space_before_comma = false
+ij_groovy_space_before_do_left_brace = true
+ij_groovy_space_before_else_keyword = true
+ij_groovy_space_before_else_left_brace = true
+ij_groovy_space_before_finally_keyword = true
+ij_groovy_space_before_finally_left_brace = true
+ij_groovy_space_before_for_left_brace = true
+ij_groovy_space_before_for_parentheses = true
+ij_groovy_space_before_for_semicolon = false
+ij_groovy_space_before_if_left_brace = true
+ij_groovy_space_before_if_parentheses = true
+ij_groovy_space_before_method_call_parentheses = false
+ij_groovy_space_before_method_left_brace = true
+ij_groovy_space_before_method_parentheses = false
+ij_groovy_space_before_quest = true
+ij_groovy_space_before_record_parentheses = false
+ij_groovy_space_before_switch_left_brace = true
+ij_groovy_space_before_switch_parentheses = true
+ij_groovy_space_before_synchronized_left_brace = true
+ij_groovy_space_before_synchronized_parentheses = true
+ij_groovy_space_before_try_left_brace = true
+ij_groovy_space_before_try_parentheses = true
+ij_groovy_space_before_while_keyword = true
+ij_groovy_space_before_while_left_brace = true
+ij_groovy_space_before_while_parentheses = true
+ij_groovy_space_in_named_argument = true
+ij_groovy_space_in_named_argument_before_colon = false
+ij_groovy_space_within_empty_array_initializer_braces = false
+ij_groovy_space_within_empty_method_call_parentheses = false
+ij_groovy_spaces_around_additive_operators = true
+ij_groovy_spaces_around_assignment_operators = true
+ij_groovy_spaces_around_bitwise_operators = true
+ij_groovy_spaces_around_equality_operators = true
+ij_groovy_spaces_around_lambda_arrow = true
+ij_groovy_spaces_around_logical_operators = true
+ij_groovy_spaces_around_multiplicative_operators = true
+ij_groovy_spaces_around_regex_operators = true
+ij_groovy_spaces_around_relational_operators = true
+ij_groovy_spaces_around_shift_operators = true
+ij_groovy_spaces_within_annotation_parentheses = false
+ij_groovy_spaces_within_array_initializer_braces = false
+ij_groovy_spaces_within_braces = true
+ij_groovy_spaces_within_brackets = false
+ij_groovy_spaces_within_cast_parentheses = false
+ij_groovy_spaces_within_catch_parentheses = false
+ij_groovy_spaces_within_for_parentheses = false
+ij_groovy_spaces_within_gstring_injection_braces = false
+ij_groovy_spaces_within_if_parentheses = false
+ij_groovy_spaces_within_list_or_map = false
+ij_groovy_spaces_within_method_call_parentheses = false
+ij_groovy_spaces_within_method_parentheses = false
+ij_groovy_spaces_within_parentheses = false
+ij_groovy_spaces_within_switch_parentheses = false
+ij_groovy_spaces_within_synchronized_parentheses = false
+ij_groovy_spaces_within_try_parentheses = false
+ij_groovy_spaces_within_tuple_expression = false
+ij_groovy_spaces_within_while_parentheses = false
+ij_groovy_special_else_if_treatment = true
+ij_groovy_ternary_operation_wrap = off
+ij_groovy_throws_keyword_wrap = off
+ij_groovy_throws_list_wrap = off
+ij_groovy_use_flying_geese_braces = false
+ij_groovy_use_fq_class_names = false
+ij_groovy_use_fq_class_names_in_javadoc = true
+ij_groovy_use_relative_indents = false
+ij_groovy_use_single_class_imports = true
+ij_groovy_variable_annotation_wrap = off
+ij_groovy_while_brace_force = never
+ij_groovy_while_on_new_line = false
+ij_groovy_wrap_chain_calls_after_dot = false
+ij_groovy_wrap_long_lines = false
+
+[{*.har,*.json,*.jsonc}]
+indent_size = 2
+ij_json_array_wrapping = split_into_lines
+ij_json_keep_blank_lines_in_code = 0
+ij_json_keep_indents_on_empty_lines = false
+ij_json_keep_line_breaks = true
+ij_json_keep_trailing_comma = false
+ij_json_object_wrapping = split_into_lines
+ij_json_property_alignment = do_not_align
+ij_json_space_after_colon = true
+ij_json_space_after_comma = true
+ij_json_space_before_colon = false
+ij_json_space_before_comma = false
+ij_json_spaces_within_braces = false
+ij_json_spaces_within_brackets = false
+ij_json_wrap_long_lines = false
+
+[{*.htm,*.html,*.sht,*.shtm,*.shtml}]
+ij_html_add_new_line_before_tags = body, div, p, form, h1, h2, h3
+ij_html_align_attributes = true
+ij_html_align_text = false
+ij_html_attribute_wrap = normal
+ij_html_block_comment_add_space = false
+ij_html_block_comment_at_first_column = true
+ij_html_do_not_align_children_of_min_lines = 0
+ij_html_do_not_break_if_inline_tags = title, h1, h2, h3, h4, h5, h6, p
+ij_html_do_not_indent_children_of_tags = html, body, thead, tbody, tfoot
+ij_html_enforce_quotes = false
+ij_html_inline_tags = a, abbr, acronym, b, basefont, bdo, big, br, cite, cite, code, dfn, em, font, i, img, input, kbd, label, q, s, samp, select, small, span, strike, strong, sub, sup, textarea, tt, u, var
+ij_html_keep_blank_lines = 2
+ij_html_keep_indents_on_empty_lines = false
+ij_html_keep_line_breaks = true
+ij_html_keep_line_breaks_in_text = true
+ij_html_keep_whitespaces = false
+ij_html_keep_whitespaces_inside = span, pre, textarea
+ij_html_line_comment_at_first_column = true
+ij_html_new_line_after_last_attribute = never
+ij_html_new_line_before_first_attribute = never
+ij_html_quote_style = double
+ij_html_remove_new_line_before_tags = br
+ij_html_space_after_tag_name = false
+ij_html_space_around_equality_in_attribute = false
+ij_html_space_inside_empty_tag = false
+ij_html_text_wrap = normal
+
+[{*.kt,*.kts}]
+ij_kotlin_align_in_columns_case_branch = false
+ij_kotlin_align_multiline_binary_operation = false
+ij_kotlin_align_multiline_extends_list = false
+ij_kotlin_align_multiline_method_parentheses = false
+ij_kotlin_align_multiline_parameters = true
+ij_kotlin_align_multiline_parameters_in_calls = false
+ij_kotlin_allow_trailing_comma = false
+ij_kotlin_allow_trailing_comma_on_call_site = false
+ij_kotlin_assignment_wrap = normal
+ij_kotlin_blank_lines_after_class_header = 0
+ij_kotlin_blank_lines_around_block_when_branches = 0
+ij_kotlin_blank_lines_before_declaration_with_comment_or_annotation_on_separate_line = 1
+ij_kotlin_block_comment_add_space = false
+ij_kotlin_block_comment_at_first_column = true
+ij_kotlin_call_parameters_new_line_after_left_paren = true
+ij_kotlin_call_parameters_right_paren_on_new_line = true
+ij_kotlin_call_parameters_wrap = on_every_item
+ij_kotlin_catch_on_new_line = false
+ij_kotlin_class_annotation_wrap = split_into_lines
+ij_kotlin_continuation_indent_for_chained_calls = false
+ij_kotlin_continuation_indent_for_expression_bodies = false
+ij_kotlin_continuation_indent_in_argument_lists = false
+ij_kotlin_continuation_indent_in_elvis = false
+ij_kotlin_continuation_indent_in_if_conditions = false
+ij_kotlin_continuation_indent_in_parameter_lists = false
+ij_kotlin_continuation_indent_in_supertype_lists = false
+ij_kotlin_else_on_new_line = false
+ij_kotlin_enum_constants_wrap = off
+ij_kotlin_extends_list_wrap = normal
+ij_kotlin_field_annotation_wrap = split_into_lines
+ij_kotlin_finally_on_new_line = false
+ij_kotlin_if_rparen_on_new_line = true
+ij_kotlin_import_nested_classes = false
+ij_kotlin_imports_layout = *, java.**, javax.**, kotlin.**, ^
+ij_kotlin_indent_before_arrow_on_new_line = true
+ij_kotlin_insert_whitespaces_in_simple_one_line_method = true
+ij_kotlin_keep_blank_lines_before_right_brace = 2
+ij_kotlin_keep_blank_lines_in_code = 2
+ij_kotlin_keep_blank_lines_in_declarations = 2
+ij_kotlin_keep_first_column_comment = true
+ij_kotlin_keep_indents_on_empty_lines = false
+ij_kotlin_keep_line_breaks = true
+ij_kotlin_lbrace_on_next_line = false
+ij_kotlin_line_break_after_multiline_when_entry = true
+ij_kotlin_line_comment_add_space = false
+ij_kotlin_line_comment_add_space_on_reformat = false
+ij_kotlin_line_comment_at_first_column = true
+ij_kotlin_method_annotation_wrap = split_into_lines
+ij_kotlin_method_call_chain_wrap = normal
+ij_kotlin_method_parameters_new_line_after_left_paren = true
+ij_kotlin_method_parameters_right_paren_on_new_line = true
+ij_kotlin_method_parameters_wrap = on_every_item
+ij_kotlin_name_count_to_use_star_import = 2147483647
+ij_kotlin_name_count_to_use_star_import_for_members = 2147483647
+ij_kotlin_packages_to_use_import_on_demand =
+ij_kotlin_parameter_annotation_wrap = off
+ij_kotlin_space_after_comma = true
+ij_kotlin_space_after_extend_colon = true
+ij_kotlin_space_after_type_colon = true
+ij_kotlin_space_before_catch_parentheses = true
+ij_kotlin_space_before_comma = false
+ij_kotlin_space_before_extend_colon = true
+ij_kotlin_space_before_for_parentheses = true
+ij_kotlin_space_before_if_parentheses = true
+ij_kotlin_space_before_lambda_arrow = true
+ij_kotlin_space_before_type_colon = false
+ij_kotlin_space_before_when_parentheses = true
+ij_kotlin_space_before_while_parentheses = true
+ij_kotlin_spaces_around_additive_operators = true
+ij_kotlin_spaces_around_assignment_operators = true
+ij_kotlin_spaces_around_equality_operators = true
+ij_kotlin_spaces_around_function_type_arrow = true
+ij_kotlin_spaces_around_logical_operators = true
+ij_kotlin_spaces_around_multiplicative_operators = true
+ij_kotlin_spaces_around_range = false
+ij_kotlin_spaces_around_relational_operators = true
+ij_kotlin_spaces_around_unary_operator = false
+ij_kotlin_spaces_around_when_arrow = true
+ij_kotlin_use_custom_formatting_for_modifiers = true
+ij_kotlin_variable_annotation_wrap = off
+ij_kotlin_while_on_new_line = false
+ij_kotlin_wrap_elvis_expressions = 1
+ij_kotlin_wrap_expression_body_functions = 1
+ij_kotlin_wrap_first_method_in_call_chain = false
+
+[{*.markdown,*.md}]
+ij_markdown_force_one_space_after_blockquote_symbol = true
+ij_markdown_force_one_space_after_header_symbol = true
+ij_markdown_force_one_space_after_list_bullet = true
+ij_markdown_force_one_space_between_words = true
+ij_markdown_format_tables = true
+ij_markdown_insert_quote_arrows_on_wrap = true
+ij_markdown_keep_indents_on_empty_lines = false
+ij_markdown_keep_line_breaks_inside_text_blocks = true
+ij_markdown_max_lines_around_block_elements = 1
+ij_markdown_max_lines_around_header = 1
+ij_markdown_max_lines_between_paragraphs = 1
+ij_markdown_min_lines_around_block_elements = 1
+ij_markdown_min_lines_around_header = 1
+ij_markdown_min_lines_between_paragraphs = 1
+ij_markdown_wrap_text_if_long = true
+ij_markdown_wrap_text_inside_blockquotes = true
+
+[{*.toml,Cargo.lock,Cargo.toml.orig,Gopkg.lock,Pipfile,poetry.lock}]
+ij_toml_keep_indents_on_empty_lines = false
From 04f34943642a2445ba81edc28b45b1d53ffb9d28 Mon Sep 17 00:00:00 2001
From: Sergey <63193749+Hlebushek2020@users.noreply.github.com>
Date: Fri, 3 Jan 2025 18:04:16 +0300
Subject: [PATCH 3/4] 03/01/2025/18/04
---
.editorconfig | 157 +++++++++++++++++++++++++++-----------------------
1 file changed, 85 insertions(+), 72 deletions(-)
diff --git a/.editorconfig b/.editorconfig
index 04621f8..be5b1cb 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -1,20 +1,23 @@
[*]
charset = utf-8
end_of_line = crlf
-indent_size = 4
+indent_size = 2
indent_style = space
insert_final_newline = false
max_line_length = 100
-tab_width = 4
-ij_continuation_indent_size = 8
+tab_width = 2
+ij_continuation_indent_size = 4
ij_formatter_off_tag = @formatter:off
ij_formatter_on_tag = @formatter:on
ij_formatter_tags_enabled = true
ij_smart_tabs = false
-ij_visual_guides =
+ij_visual_guides =
ij_wrap_on_typing = false
[*.dcl]
+indent_size = 4
+tab_width = 4
+ij_continuation_indent_size = 8
ij_declarative_keep_indents_on_empty_lines = false
[*.java]
@@ -28,13 +31,13 @@ ij_java_align_multiline_binary_operation = false
ij_java_align_multiline_chained_methods = false
ij_java_align_multiline_deconstruction_list_components = true
ij_java_align_multiline_extends_list = false
-ij_java_align_multiline_for = true
+ij_java_align_multiline_for = false
ij_java_align_multiline_method_parentheses = false
-ij_java_align_multiline_parameters = true
+ij_java_align_multiline_parameters = false
ij_java_align_multiline_parameters_in_calls = false
ij_java_align_multiline_parenthesized_expression = false
ij_java_align_multiline_records = true
-ij_java_align_multiline_resources = true
+ij_java_align_multiline_resources = false
ij_java_align_multiline_ternary_operation = false
ij_java_align_multiline_text_blocks = false
ij_java_align_multiline_throws_list = false
@@ -44,12 +47,12 @@ ij_java_align_types_in_multi_catch = true
ij_java_annotation_parameter_wrap = off
ij_java_array_initializer_new_line_after_left_brace = false
ij_java_array_initializer_right_brace_on_new_line = false
-ij_java_array_initializer_wrap = off
+ij_java_array_initializer_wrap = normal
ij_java_assert_statement_colon_on_next_line = false
ij_java_assert_statement_wrap = off
ij_java_assignment_wrap = off
-ij_java_binary_operation_sign_on_next_line = false
-ij_java_binary_operation_wrap = off
+ij_java_binary_operation_sign_on_next_line = true
+ij_java_binary_operation_wrap = normal
ij_java_blank_lines_after_anonymous_class_header = 0
ij_java_blank_lines_after_class_header = 0
ij_java_blank_lines_after_imports = 1
@@ -59,7 +62,7 @@ ij_java_blank_lines_around_field = 0
ij_java_blank_lines_around_field_in_interface = 0
ij_java_blank_lines_around_initializer = 1
ij_java_blank_lines_around_method = 1
-ij_java_blank_lines_around_method_in_interface = 1
+ij_java_blank_lines_around_method_in_interface = 0
ij_java_blank_lines_before_class_end = 0
ij_java_blank_lines_before_imports = 1
ij_java_blank_lines_before_method_body = 0
@@ -67,21 +70,21 @@ ij_java_blank_lines_before_package = 0
ij_java_block_brace_style = end_of_line
ij_java_block_comment_add_space = false
ij_java_block_comment_at_first_column = true
-ij_java_builder_methods =
+ij_java_builder_methods =
ij_java_call_parameters_new_line_after_left_paren = false
ij_java_call_parameters_right_paren_on_new_line = false
-ij_java_call_parameters_wrap = off
+ij_java_call_parameters_wrap = normal
ij_java_case_statement_on_separate_line = true
ij_java_catch_on_new_line = false
ij_java_class_annotation_wrap = split_into_lines
ij_java_class_brace_style = end_of_line
-ij_java_class_count_to_use_import_on_demand = 99
+ij_java_class_count_to_use_import_on_demand = 999
ij_java_class_names_in_javadoc = 1
ij_java_deconstruction_list_wrap = normal
ij_java_do_not_indent_top_level_class_members = false
ij_java_do_not_wrap_after_single_annotation = false
ij_java_do_not_wrap_after_single_annotation_in_parameter = false
-ij_java_do_while_brace_force = never
+ij_java_do_while_brace_force = always
ij_java_doc_add_blank_line_after_description = true
ij_java_doc_add_blank_line_after_param_comments = false
ij_java_doc_add_blank_line_after_return = false
@@ -104,32 +107,32 @@ ij_java_else_on_new_line = false
ij_java_enum_constants_wrap = off
ij_java_enum_field_annotation_wrap = off
ij_java_extends_keyword_wrap = off
-ij_java_extends_list_wrap = off
+ij_java_extends_list_wrap = normal
ij_java_field_annotation_wrap = split_into_lines
ij_java_field_name_prefix =
-ij_java_field_name_suffix =
+ij_java_field_name_suffix =
ij_java_finally_on_new_line = false
-ij_java_for_brace_force = never
+ij_java_for_brace_force = always
ij_java_for_statement_new_line_after_left_paren = false
ij_java_for_statement_right_paren_on_new_line = false
-ij_java_for_statement_wrap = off
+ij_java_for_statement_wrap = normal
ij_java_generate_final_locals = false
ij_java_generate_final_parameters = false
ij_java_generate_use_type_annotation_before_type = true
-ij_java_if_brace_force = never
-ij_java_imports_layout = $android.**, $androidx.**, $com.**, $junit.**, $net.**, $org.**, $java.**, $javax.**, $*, |, android.**, |, androidx.**, |, com.**, |, junit.**, |, net.**, |, org.**, |, java.**, |, javax.**, |, *, |
+ij_java_if_brace_force = always
+ij_java_imports_layout = $*, |, *
ij_java_indent_case_from_switch = true
-ij_java_insert_inner_class_imports = false
+ij_java_insert_inner_class_imports = true
ij_java_insert_override_annotation = true
-ij_java_keep_blank_lines_before_right_brace = 2
-ij_java_keep_blank_lines_between_package_declaration_and_header = 2
-ij_java_keep_blank_lines_in_code = 2
-ij_java_keep_blank_lines_in_declarations = 2
+ij_java_keep_blank_lines_before_right_brace = 1
+ij_java_keep_blank_lines_between_package_declaration_and_header = 1
+ij_java_keep_blank_lines_in_code = 1
+ij_java_keep_blank_lines_in_declarations = 1
ij_java_keep_builder_methods_indents = false
-ij_java_keep_control_statement_in_one_line = true
-ij_java_keep_first_column_comment = true
+ij_java_keep_control_statement_in_one_line = false
+ij_java_keep_first_column_comment = false
ij_java_keep_indents_on_empty_lines = false
-ij_java_keep_line_breaks = true
+ij_java_keep_line_breaks = false
ij_java_keep_multiple_expressions_in_one_line = false
ij_java_keep_simple_blocks_in_one_line = false
ij_java_keep_simple_classes_in_one_line = false
@@ -143,31 +146,31 @@ ij_java_line_comment_add_space = false
ij_java_line_comment_add_space_on_reformat = false
ij_java_line_comment_at_first_column = true
ij_java_local_variable_name_prefix =
-ij_java_local_variable_name_suffix =
+ij_java_local_variable_name_suffix =
ij_java_method_annotation_wrap = split_into_lines
ij_java_method_brace_style = end_of_line
-ij_java_method_call_chain_wrap = off
+ij_java_method_call_chain_wrap = normal
ij_java_method_parameters_new_line_after_left_paren = false
ij_java_method_parameters_right_paren_on_new_line = false
-ij_java_method_parameters_wrap = off
+ij_java_method_parameters_wrap = normal
ij_java_modifier_list_wrap = false
ij_java_multi_catch_types_wrap = normal
-ij_java_names_count_to_use_import_on_demand = 99
+ij_java_names_count_to_use_import_on_demand = 999
ij_java_new_line_after_lparen_in_annotation = false
ij_java_new_line_after_lparen_in_deconstruction_pattern = true
ij_java_new_line_after_lparen_in_record_header = false
ij_java_new_line_when_body_is_presented = false
-ij_java_packages_to_use_import_on_demand =
+ij_java_packages_to_use_import_on_demand =
ij_java_parameter_annotation_wrap = off
ij_java_parameter_name_prefix =
-ij_java_parameter_name_suffix =
+ij_java_parameter_name_suffix =
ij_java_parentheses_expression_new_line_after_left_paren = false
ij_java_parentheses_expression_right_paren_on_new_line = false
ij_java_place_assignment_sign_on_next_line = false
ij_java_prefer_longer_names = true
ij_java_prefer_parameters_wrap = false
ij_java_record_components_wrap = normal
-ij_java_repeat_annotations =
+ij_java_repeat_annotations =
ij_java_repeat_synchronized = true
ij_java_replace_instanceof_and_cast = false
ij_java_replace_null_check = true
@@ -260,14 +263,14 @@ ij_java_spaces_within_while_parentheses = false
ij_java_special_else_if_treatment = true
ij_java_static_field_name_prefix =
ij_java_static_field_name_suffix =
-ij_java_subclass_name_prefix =
+ij_java_subclass_name_prefix =
ij_java_subclass_name_suffix = Impl
ij_java_switch_expressions_wrap = normal
-ij_java_ternary_operation_signs_on_next_line = false
-ij_java_ternary_operation_wrap = off
-ij_java_test_name_prefix =
+ij_java_ternary_operation_signs_on_next_line = true
+ij_java_ternary_operation_wrap = normal
+ij_java_test_name_prefix =
ij_java_test_name_suffix = Test
-ij_java_throws_keyword_wrap = off
+ij_java_throws_keyword_wrap = normal
ij_java_throws_list_wrap = off
ij_java_use_external_annotations = false
ij_java_use_fq_class_names = false
@@ -275,9 +278,9 @@ ij_java_use_relative_indents = false
ij_java_use_single_class_imports = true
ij_java_variable_annotation_wrap = off
ij_java_visibility = public
-ij_java_while_brace_force = never
+ij_java_while_brace_force = always
ij_java_while_on_new_line = false
-ij_java_wrap_comments = false
+ij_java_wrap_comments = true
ij_java_wrap_first_method_in_call_chain = false
ij_java_wrap_long_lines = false
ij_java_wrap_semicolon_after_call_chain = false
@@ -297,7 +300,7 @@ ij_editorconfig_space_before_comma = false
ij_editorconfig_spaces_around_assignment_operators = true
[{*.ant,*.fxml,*.jhm,*.jnlp,*.jrxml,*.rng,*.tld,*.wsdl,*.xml,*.xsd,*.xsl,*.xslt,*.xul}]
-ij_continuation_indent_size = 4
+ij_continuation_indent_size = 2
ij_xml_align_attributes = false
ij_xml_align_text = false
ij_xml_attribute_wrap = normal
@@ -318,7 +321,6 @@ ij_xml_text_wrap = normal
ij_xml_use_custom_settings = true
[{*.apinotes,*.yaml,*.yml,.clang-format,.clang-tidy,_clang-format}]
-indent_size = 2
ij_yaml_align_values_properties = do_not_align
ij_yaml_autoinsert_sequence_marker = true
ij_yaml_block_mapping_on_new_line = false
@@ -334,8 +336,6 @@ ij_yaml_spaces_within_braces = true
ij_yaml_spaces_within_brackets = true
[{*.bash,*.sh,*.zsh}]
-indent_size = 2
-tab_width = 2
ij_shell_binary_ops_start_line = false
ij_shell_keep_column_alignment_padding = false
ij_shell_minify_program = false
@@ -344,15 +344,16 @@ ij_shell_switch_cases_indented = false
ij_shell_use_unix_line_separator = true
[{*.c,*.c++,*.c++m,*.cc,*.ccm,*.cp,*.cpp,*.cppm,*.cu,*.cuh,*.cxx,*.cxxm,*.h,*.h++,*.hh,*.hp,*.hpp,*.hxx,*.i,*.icc,*.ii,*.inl,*.ino,*.ipp,*.ixx,*.m,*.mm,*.mxx,*.pch,*.tcc,*.tpp}]
+max_line_length = 80
ij_c_add_brief_tag = false
ij_c_add_getter_prefix = true
ij_c_add_setter_prefix = true
ij_c_align_dictionary_pair_values = false
ij_c_align_group_field_declarations = false
-ij_c_align_init_list_in_columns = true
+ij_c_align_init_list_in_columns = false
ij_c_align_multiline_array_initializer_expression = true
ij_c_align_multiline_assignment = true
-ij_c_align_multiline_binary_operation = true
+ij_c_align_multiline_binary_operation = false
ij_c_align_multiline_chained_methods = false
ij_c_align_multiline_for = true
ij_c_align_multiline_ternary_operation = true
@@ -360,20 +361,20 @@ ij_c_array_initializer_comma_on_next_line = false
ij_c_array_initializer_new_line_after_left_brace = false
ij_c_array_initializer_right_brace_on_new_line = false
ij_c_array_initializer_wrap = normal
-ij_c_assignment_wrap = off
-ij_c_binary_operation_sign_on_next_line = false
+ij_c_assignment_wrap = normal
+ij_c_binary_operation_sign_on_next_line = true
ij_c_binary_operation_wrap = normal
ij_c_blank_lines_after_class_header = 0
-ij_c_blank_lines_after_imports = 1
-ij_c_blank_lines_around_class = 1
+ij_c_blank_lines_after_imports = 0
+ij_c_blank_lines_around_class = 0
ij_c_blank_lines_around_field = 0
ij_c_blank_lines_around_field_in_interface = 0
-ij_c_blank_lines_around_method = 1
-ij_c_blank_lines_around_method_in_interface = 1
+ij_c_blank_lines_around_method = 0
+ij_c_blank_lines_around_method_in_interface = 0
ij_c_blank_lines_around_namespace = 0
ij_c_blank_lines_around_properties_in_declaration = 0
ij_c_blank_lines_around_properties_in_interface = 0
-ij_c_blank_lines_before_imports = 1
+ij_c_blank_lines_before_imports = 0
ij_c_blank_lines_before_method_body = 0
ij_c_block_brace_placement = end_of_line
ij_c_block_brace_style = end_of_line
@@ -398,21 +399,21 @@ ij_c_enum_constants_wrap = on_every_item
ij_c_for_brace_force = never
ij_c_for_statement_new_line_after_left_paren = false
ij_c_for_statement_right_paren_on_new_line = false
-ij_c_for_statement_wrap = off
+ij_c_for_statement_wrap = normal
ij_c_function_brace_placement = end_of_line
ij_c_function_call_arguments_align_multiline = true
ij_c_function_call_arguments_align_multiline_pars = false
ij_c_function_call_arguments_comma_on_next_line = false
ij_c_function_call_arguments_new_line_after_lpar = false
ij_c_function_call_arguments_new_line_before_rpar = false
-ij_c_function_call_arguments_wrap = normal
+ij_c_function_call_arguments_wrap = on_every_item
ij_c_function_non_top_after_return_type_wrap = normal
ij_c_function_parameters_align_multiline = true
ij_c_function_parameters_align_multiline_pars = false
ij_c_function_parameters_comma_on_next_line = false
ij_c_function_parameters_new_line_after_lpar = false
ij_c_function_parameters_new_line_before_rpar = false
-ij_c_function_parameters_wrap = normal
+ij_c_function_parameters_wrap = on_every_item
ij_c_function_top_after_return_type_wrap = normal
ij_c_generate_additional_eq_operators = true
ij_c_generate_additional_rel_operators = true
@@ -424,17 +425,17 @@ ij_c_header_guard_style_pattern = ${PROJECT_NAME}_${FILE_NAME}_${EXT}
ij_c_if_brace_force = never
ij_c_in_line_short_ternary_operator = true
ij_c_indent_block_comment = true
-ij_c_indent_c_struct_members = 4
+ij_c_indent_c_struct_members = 2
ij_c_indent_case_from_switch = true
-ij_c_indent_class_members = 4
+ij_c_indent_class_members = 2
ij_c_indent_directive_as_code = false
ij_c_indent_implementation_members = 0
-ij_c_indent_inside_code_block = 4
+ij_c_indent_inside_code_block = 2
ij_c_indent_interface_members = 0
ij_c_indent_interface_members_except_ivars_block = false
-ij_c_indent_namespace_members = 4
+ij_c_indent_namespace_members = 0
ij_c_indent_preprocessor_directive = 0
-ij_c_indent_visibility_keywords = 0
+ij_c_indent_visibility_keywords = 1
ij_c_insert_override = true
ij_c_insert_virtual_with_override = false
ij_c_introduce_auto_consts = false
@@ -449,9 +450,9 @@ ij_c_introduce_prop_to_private_category = false
ij_c_introduce_static_consts = true
ij_c_introduce_use_ns_types = false
ij_c_ivars_prefix = _
-ij_c_ivars_suffix =
+ij_c_ivars_suffix =
ij_c_keep_blank_lines_before_end = 2
-ij_c_keep_blank_lines_before_right_brace = 2
+ij_c_keep_blank_lines_before_right_brace = 1
ij_c_keep_blank_lines_in_code = 2
ij_c_keep_blank_lines_in_declarations = 2
ij_c_keep_case_expressions_in_one_line = false
@@ -462,7 +463,7 @@ ij_c_keep_line_breaks = true
ij_c_keep_nested_namespaces_in_one_line = false
ij_c_keep_simple_blocks_in_one_line = true
ij_c_keep_simple_methods_in_one_line = true
-ij_c_keep_structures_in_one_line = false
+ij_c_keep_structures_in_one_line = true
ij_c_lambda_capture_list_align_multiline = false
ij_c_lambda_capture_list_align_multiline_bracket = false
ij_c_lambda_capture_list_comma_on_next_line = false
@@ -543,7 +544,7 @@ ij_c_space_before_property_attributes_parentheses = false
ij_c_space_before_protocols_brackets = true
ij_c_space_before_quest = true
ij_c_space_before_reference_in_declaration = true
-ij_c_space_before_superclass_colon = true
+ij_c_space_before_superclass_colon = false
ij_c_space_before_switch_left_brace = true
ij_c_space_before_switch_parentheses = true
ij_c_space_before_template_call_lt = false
@@ -609,12 +610,12 @@ ij_c_superclass_list_comma_on_next_line = false
ij_c_superclass_list_wrap = on_every_item
ij_c_tag_prefix_of_block_comment = at
ij_c_tag_prefix_of_line_comment = back_slash
-ij_c_template_call_arguments_align_multiline = false
+ij_c_template_call_arguments_align_multiline = true
ij_c_template_call_arguments_align_multiline_pars = false
ij_c_template_call_arguments_comma_on_next_line = false
ij_c_template_call_arguments_new_line_after_lt = false
ij_c_template_call_arguments_new_line_before_gt = false
-ij_c_template_call_arguments_wrap = off
+ij_c_template_call_arguments_wrap = on_every_item
ij_c_template_declaration_function_body_indent = false
ij_c_template_declaration_function_wrap = split_into_lines
ij_c_template_declaration_struct_body_indent = false
@@ -635,6 +636,7 @@ ij_c_while_on_new_line = false
ij_c_wrap_property_declaration = off
[{*.cmake,CMakeLists.txt}]
+indent_size = 4
ij_cmake_align_command_call_r_par = false
ij_cmake_align_control_flow_r_par = false
ij_cmake_align_multiline_parameters_in_calls = false
@@ -652,6 +654,9 @@ ij_cmake_spaces_within_method_parentheses = false
ij_cmake_spaces_within_while_parentheses = false
[{*.gant,*.groovy,*.gy}]
+indent_size = 4
+tab_width = 4
+ij_continuation_indent_size = 8
ij_groovy_align_group_field_declarations = false
ij_groovy_align_multiline_array_initializer_expression = false
ij_groovy_align_multiline_assignment = false
@@ -843,7 +848,6 @@ ij_groovy_wrap_chain_calls_after_dot = false
ij_groovy_wrap_long_lines = false
[{*.har,*.json,*.jsonc}]
-indent_size = 2
ij_json_array_wrapping = split_into_lines
ij_json_keep_blank_lines_in_code = 0
ij_json_keep_indents_on_empty_lines = false
@@ -888,6 +892,9 @@ ij_html_space_inside_empty_tag = false
ij_html_text_wrap = normal
[{*.kt,*.kts}]
+indent_size = 4
+tab_width = 4
+ij_continuation_indent_size = 8
ij_kotlin_align_in_columns_case_branch = false
ij_kotlin_align_multiline_binary_operation = false
ij_kotlin_align_multiline_extends_list = false
@@ -942,7 +949,7 @@ ij_kotlin_method_parameters_right_paren_on_new_line = true
ij_kotlin_method_parameters_wrap = on_every_item
ij_kotlin_name_count_to_use_star_import = 2147483647
ij_kotlin_name_count_to_use_star_import_for_members = 2147483647
-ij_kotlin_packages_to_use_import_on_demand =
+ij_kotlin_packages_to_use_import_on_demand =
ij_kotlin_parameter_annotation_wrap = off
ij_kotlin_space_after_comma = true
ij_kotlin_space_after_extend_colon = true
@@ -974,6 +981,9 @@ ij_kotlin_wrap_expression_body_functions = 1
ij_kotlin_wrap_first_method_in_call_chain = false
[{*.markdown,*.md}]
+indent_size = 4
+tab_width = 4
+ij_continuation_indent_size = 8
ij_markdown_force_one_space_after_blockquote_symbol = true
ij_markdown_force_one_space_after_header_symbol = true
ij_markdown_force_one_space_after_list_bullet = true
@@ -992,4 +1002,7 @@ ij_markdown_wrap_text_if_long = true
ij_markdown_wrap_text_inside_blockquotes = true
[{*.toml,Cargo.lock,Cargo.toml.orig,Gopkg.lock,Pipfile,poetry.lock}]
+indent_size = 4
+tab_width = 4
+ij_continuation_indent_size = 8
ij_toml_keep_indents_on_empty_lines = false
From f4a5f87f7d700d0caf02e08cc66841b29c59a268 Mon Sep 17 00:00:00 2001
From: Sergey <63193749+Hlebushek2020@users.noreply.github.com>
Date: Mon, 6 Jan 2025 00:23:57 +0300
Subject: [PATCH 4/4] 06/01/2025/00/23
---
.editorconfig | 16 +-
app/build.gradle | 2 +-
app/src/main/AndroidManifest.xml | 1 -
.../DirectoryChooserActivity.java | 71 +-
.../imagecollection/MainActivity.java | 689 +++++++++---------
build.gradle | 2 +-
6 files changed, 390 insertions(+), 391 deletions(-)
diff --git a/.editorconfig b/.editorconfig
index be5b1cb..56d6dcb 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -109,7 +109,7 @@ ij_java_enum_field_annotation_wrap = off
ij_java_extends_keyword_wrap = off
ij_java_extends_list_wrap = normal
ij_java_field_annotation_wrap = split_into_lines
-ij_java_field_name_prefix =
+ij_java_field_name_prefix =
ij_java_field_name_suffix =
ij_java_finally_on_new_line = false
ij_java_for_brace_force = always
@@ -137,7 +137,7 @@ ij_java_keep_multiple_expressions_in_one_line = false
ij_java_keep_simple_blocks_in_one_line = false
ij_java_keep_simple_classes_in_one_line = false
ij_java_keep_simple_lambdas_in_one_line = false
-ij_java_keep_simple_methods_in_one_line = false
+ij_java_keep_simple_methods_in_one_line = true
ij_java_label_indent_absolute = false
ij_java_label_indent_size = 0
ij_java_lambda_brace_style = end_of_line
@@ -145,7 +145,7 @@ ij_java_layout_static_imports_separately = true
ij_java_line_comment_add_space = false
ij_java_line_comment_add_space_on_reformat = false
ij_java_line_comment_at_first_column = true
-ij_java_local_variable_name_prefix =
+ij_java_local_variable_name_prefix =
ij_java_local_variable_name_suffix =
ij_java_method_annotation_wrap = split_into_lines
ij_java_method_brace_style = end_of_line
@@ -162,7 +162,7 @@ ij_java_new_line_after_lparen_in_record_header = false
ij_java_new_line_when_body_is_presented = false
ij_java_packages_to_use_import_on_demand =
ij_java_parameter_annotation_wrap = off
-ij_java_parameter_name_prefix =
+ij_java_parameter_name_prefix =
ij_java_parameter_name_suffix =
ij_java_parentheses_expression_new_line_after_left_paren = false
ij_java_parentheses_expression_right_paren_on_new_line = false
@@ -190,7 +190,7 @@ ij_java_space_after_quest = true
ij_java_space_after_type_cast = true
ij_java_space_before_annotation_array_initializer_left_brace = false
ij_java_space_before_annotation_parameter_list = false
-ij_java_space_before_array_initializer_left_brace = false
+ij_java_space_before_array_initializer_left_brace = true
ij_java_space_before_catch_keyword = true
ij_java_space_before_catch_left_brace = true
ij_java_space_before_catch_parentheses = true
@@ -244,8 +244,8 @@ ij_java_spaces_around_unary_operator = false
ij_java_spaces_inside_block_braces_when_body_is_present = false
ij_java_spaces_within_angle_brackets = false
ij_java_spaces_within_annotation_parentheses = false
-ij_java_spaces_within_array_initializer_braces = false
-ij_java_spaces_within_braces = false
+ij_java_spaces_within_array_initializer_braces = true
+ij_java_spaces_within_braces = true
ij_java_spaces_within_brackets = false
ij_java_spaces_within_cast_parentheses = false
ij_java_spaces_within_catch_parentheses = false
@@ -262,7 +262,7 @@ ij_java_spaces_within_try_parentheses = false
ij_java_spaces_within_while_parentheses = false
ij_java_special_else_if_treatment = true
ij_java_static_field_name_prefix =
-ij_java_static_field_name_suffix =
+ij_java_static_field_name_suffix =
ij_java_subclass_name_prefix =
ij_java_subclass_name_suffix = Impl
ij_java_switch_expressions_wrap = normal
diff --git a/app/build.gradle b/app/build.gradle
index 2550bc1..c81e2ad 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -8,7 +8,7 @@ android {
defaultConfig {
applicationId "com.sergeygovorunov.imagecollection"
- minSdk 29
+ minSdk 30
targetSdk 32
versionCode 1
versionName "0.1"
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9ff0483..a312a7c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -25,7 +25,6 @@
android:exported="true">
-
diff --git a/app/src/main/java/com/sergeygovorunov/imagecollection/DirectoryChooserActivity.java b/app/src/main/java/com/sergeygovorunov/imagecollection/DirectoryChooserActivity.java
index 413aeb9..5c34cae 100644
--- a/app/src/main/java/com/sergeygovorunov/imagecollection/DirectoryChooserActivity.java
+++ b/app/src/main/java/com/sergeygovorunov/imagecollection/DirectoryChooserActivity.java
@@ -1,47 +1,54 @@
package com.sergeygovorunov.imagecollection;
-import androidx.appcompat.app.AppCompatActivity;
-import androidx.recyclerview.widget.RecyclerView;
-
import android.content.Intent;
+import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
+import android.provider.Settings;
import android.widget.Button;
-
+import androidx.appcompat.app.AppCompatActivity;
+import androidx.recyclerview.widget.RecyclerView;
import com.sergeygovorunov.imagecollection.adapters.DirectoryChooserViewAdapter;
-
import java.io.File;
public class DirectoryChooserActivity extends AppCompatActivity {
- public static final String KEY_SELECTED_FILE = "selectedFile";
-
- private DirectoryChooserViewAdapter directoryChooserViewAdapter;
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_directory_chooser);
- RecyclerView recyclerView_directories = findViewById(R.id.folder_list);
- File current = Environment.getExternalStorageDirectory();
- directoryChooserViewAdapter = new DirectoryChooserViewAdapter(this, current);
- recyclerView_directories.setAdapter(directoryChooserViewAdapter);
- Button button_ok = findViewById(R.id.ok);
- button_ok.setOnClickListener(view -> {
- Intent data = new Intent();
- data.putExtra(KEY_SELECTED_FILE, directoryChooserViewAdapter.getCurrent());
- setResult(RESULT_OK, data);
- finish();
- });
+ public static final String KEY_SELECTED_FILE = "selectedFile";
+
+ private DirectoryChooserViewAdapter directoryChooserViewAdapter;
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_directory_chooser);
+ RecyclerView recyclerView_directories = findViewById(R.id.folder_list);
+
+ if (!Environment.isExternalStorageManager()) {
+ Intent intent = new Intent(Settings.ACTION_MANAGE_APP_ALL_FILES_ACCESS_PERMISSION);
+ Uri uri = Uri.fromParts("package", getPackageName(), null);
+ intent.setData(uri);
+ startActivity(intent);
}
- @Override
- public void onBackPressed() {
- File current = directoryChooserViewAdapter.getCurrent();
- if (Environment.getExternalStorageDirectory().equals(current)) {
- super.onBackPressed();
- } else {
- directoryChooserViewAdapter.previous();
- }
+ File current = Environment.getExternalStorageDirectory();
+ directoryChooserViewAdapter = new DirectoryChooserViewAdapter(this, current);
+ recyclerView_directories.setAdapter(directoryChooserViewAdapter);
+ Button button_ok = findViewById(R.id.ok);
+ button_ok.setOnClickListener(view -> {
+ Intent data = new Intent();
+ data.putExtra(KEY_SELECTED_FILE, directoryChooserViewAdapter.getCurrent());
+ setResult(RESULT_OK, data);
+ finish();
+ });
+ }
+
+ @Override
+ public void onBackPressed() {
+ File current = directoryChooserViewAdapter.getCurrent();
+ if (Environment.getExternalStorageDirectory().equals(current)) {
+ super.onBackPressed();
+ } else {
+ directoryChooserViewAdapter.previous();
}
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/sergeygovorunov/imagecollection/MainActivity.java b/app/src/main/java/com/sergeygovorunov/imagecollection/MainActivity.java
index 6a00eb4..dea02be 100644
--- a/app/src/main/java/com/sergeygovorunov/imagecollection/MainActivity.java
+++ b/app/src/main/java/com/sergeygovorunov/imagecollection/MainActivity.java
@@ -20,7 +20,6 @@
import android.widget.ImageSwitcher;
import android.widget.ImageView;
import android.widget.LinearLayout;
-
import androidx.activity.result.ActivityResultLauncher;
import androidx.activity.result.contract.ActivityResultContracts;
import androidx.annotation.NonNull;
@@ -28,11 +27,9 @@
import androidx.core.view.GestureDetectorCompat;
import androidx.drawerlayout.widget.DrawerLayout;
import androidx.recyclerview.widget.RecyclerView;
-
import com.sergeygovorunov.imagecollection.adapters.CollectionListViewAdapter;
import com.sergeygovorunov.imagecollection.adapters.FileListViewAdapter;
import com.sergeygovorunov.imagecollection.dialogs.InputAlertDialog;
-
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
@@ -45,378 +42,374 @@
public class MainActivity extends AppCompatActivity {
- private static final String SESSION_FILE_NAME = "session.txt";
- private static final Pattern CHECK_SPECIAL_PATH_SYMBOLS = Pattern.compile("[<>:\"/\\\\|?*]");
+ private static final String SESSION_FILE_NAME = "session.txt";
+ private static final Pattern CHECK_SPECIAL_PATH_SYMBOLS = Pattern.compile("[<>:\"/\\\\|?*]");
- private ActivityResultLauncher arl_directoryChooser;
- private ActivityResultLauncher arl_selectToCollection;
- private Intent intent_selectToCollection;
- private GestureDetectorCompat gestureDetector;
+ private ActivityResultLauncher arl_directoryChooser;
+ private ActivityResultLauncher arl_selectToCollection;
+ private Intent intent_selectToCollection;
+ private GestureDetectorCompat gestureDetector;
- private DrawerLayout drawerLayout_main;
- private ImageSwitcher imageSwitcher;
- private Menu menu_options;
+ private DrawerLayout drawerLayout_main;
+ private ImageSwitcher imageSwitcher;
+ private Menu menu_options;
- private CollectionListViewAdapter collectionListViewAdapter;
- private FileListViewAdapter fileListViewAdapter;
+ private CollectionListViewAdapter collectionListViewAdapter;
+ private FileListViewAdapter fileListViewAdapter;
- private Animation anim_imageSwitcher_lin;
- private Animation anim_imageSwitcher_lout;
- private Animation anim_imageSwitcher_rin;
- private Animation anim_imageSwitcher_rout;
- private Animation anim_imageSwitcher_down;
- private Animation anim_imageSwitcher_up;
+ private Animation anim_imageSwitcher_lin;
+ private Animation anim_imageSwitcher_lout;
+ private Animation anim_imageSwitcher_rin;
+ private Animation anim_imageSwitcher_rout;
+ private Animation anim_imageSwitcher_down;
+ private Animation anim_imageSwitcher_up;
- private int drawerState;
+ private int drawerState;
- private AlertDialog.Builder adb_deleteFile;
+ private AlertDialog.Builder adb_deleteFile;
- @SuppressLint("ClickableViewAccessibility")
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- //
- imageSwitcher = findViewById(R.id.image_switcher);
- RecyclerView rv_fileList = findViewById(R.id.file_list);
- drawerLayout_main = findViewById(R.id.main_drawer_layout);
- RecyclerView rv_collectionList = findViewById(R.id.collection_list);
- //
- fileListViewAdapter = new FileListViewAdapter(this);
- fileListViewAdapter.setOnItemClickListener((item, action) -> {
- // anim
- switch (action) {
- case NEXT:
- imageSwitcher.setInAnimation(anim_imageSwitcher_rin);
- imageSwitcher.setOutAnimation(anim_imageSwitcher_rout);
- break;
- case MOVE_GET_NEXT:
- imageSwitcher.setInAnimation(anim_imageSwitcher_rin);
- imageSwitcher.setOutAnimation(anim_imageSwitcher_down);
- break;
- case REMOVE_GET_NEXT:
- imageSwitcher.setInAnimation(anim_imageSwitcher_rin);
- imageSwitcher.setOutAnimation(anim_imageSwitcher_up);
- break;
- case PREVIOUS:
- imageSwitcher.setInAnimation(anim_imageSwitcher_lin);
- imageSwitcher.setOutAnimation(anim_imageSwitcher_lout);
- break;
- case MOVE_GET_PREVIOUS:
- imageSwitcher.setInAnimation(anim_imageSwitcher_lin);
- imageSwitcher.setOutAnimation(anim_imageSwitcher_down);
- break;
- case REMOVE_GET_PREVIOUS:
- imageSwitcher.setInAnimation(anim_imageSwitcher_lin);
- imageSwitcher.setOutAnimation(anim_imageSwitcher_up);
- break;
- }
- // image
- Drawable drawable = null;
- if (item != null) {
- Bitmap bitmapOrig = BitmapFactory.decodeFile(item.getPath());
- double w = bitmapOrig.getWidth();
- double h = bitmapOrig.getHeight();
- DisplayMetrics displayMetrics = new DisplayMetrics();
- getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
- double nw = displayMetrics.widthPixels;
- double nh = displayMetrics.heightPixels;
- if (w > h) {
- nh = nw / (w / h);
- } else {
- nw = nh / (h / w);
- }
- Bitmap bitmap = Bitmap.createScaledBitmap(bitmapOrig, (int) nw, (int) nh, false);
- drawable = new BitmapDrawable(null, bitmap);
- }
- imageSwitcher.setImageDrawable(drawable);
- drawerLayout_main.closeDrawers();
+ @SuppressLint("ClickableViewAccessibility")
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ setContentView(R.layout.activity_main);
+ //
+ imageSwitcher = findViewById(R.id.image_switcher);
+ RecyclerView rv_fileList = findViewById(R.id.file_list);
+ drawerLayout_main = findViewById(R.id.main_drawer_layout);
+ RecyclerView rv_collectionList = findViewById(R.id.collection_list);
+ //
+ fileListViewAdapter = new FileListViewAdapter(this);
+ fileListViewAdapter.setOnItemClickListener((item, action) -> {
+ // anim
+ switch (action) {
+ case NEXT:
+ imageSwitcher.setInAnimation(anim_imageSwitcher_rin);
+ imageSwitcher.setOutAnimation(anim_imageSwitcher_rout);
+ break;
+ case MOVE_GET_NEXT:
+ imageSwitcher.setInAnimation(anim_imageSwitcher_rin);
+ imageSwitcher.setOutAnimation(anim_imageSwitcher_down);
+ break;
+ case REMOVE_GET_NEXT:
+ imageSwitcher.setInAnimation(anim_imageSwitcher_rin);
+ imageSwitcher.setOutAnimation(anim_imageSwitcher_up);
+ break;
+ case PREVIOUS:
+ imageSwitcher.setInAnimation(anim_imageSwitcher_lin);
+ imageSwitcher.setOutAnimation(anim_imageSwitcher_lout);
+ break;
+ case MOVE_GET_PREVIOUS:
+ imageSwitcher.setInAnimation(anim_imageSwitcher_lin);
+ imageSwitcher.setOutAnimation(anim_imageSwitcher_down);
+ break;
+ case REMOVE_GET_PREVIOUS:
+ imageSwitcher.setInAnimation(anim_imageSwitcher_lin);
+ imageSwitcher.setOutAnimation(anim_imageSwitcher_up);
+ break;
+ }
+ // image
+ Drawable drawable = null;
+ if (item != null) {
+ Bitmap bitmapOrig = BitmapFactory.decodeFile(item.getPath());
+ double w = bitmapOrig.getWidth();
+ double h = bitmapOrig.getHeight();
+ DisplayMetrics displayMetrics = new DisplayMetrics();
+ getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
+ double nw = displayMetrics.widthPixels;
+ double nh = displayMetrics.heightPixels;
+ if (w > h) {
+ nh = nw / (w / h);
+ } else {
+ nw = nh / (h / w);
+ }
+ Bitmap bitmap = Bitmap.createScaledBitmap(bitmapOrig, (int) nw, (int) nh, false);
+ drawable = new BitmapDrawable(null, bitmap);
+ }
+ imageSwitcher.setImageDrawable(drawable);
+ drawerLayout_main.closeDrawers();
+ });
+ rv_fileList.setAdapter(fileListViewAdapter);
+ //
+ collectionListViewAdapter = new CollectionListViewAdapter(this);
+ collectionListViewAdapter.setOnCollectionChangedListener((collection, item) -> {
+ fileListViewAdapter.setCollection(collection, item);
+ setTitle(collection.getName());
+ drawerLayout_main.closeDrawers();
+ if (!collection.equals(collectionListViewAdapter.getBaseDirectory())) {
+ menu_options.findItem(R.id.delete_collection).setEnabled(true);
+ menu_options.findItem(R.id.rename_collection).setEnabled(true);
+ } else {
+ menu_options.findItem(R.id.delete_collection).setEnabled(false);
+ menu_options.findItem(R.id.rename_collection).setEnabled(false);
+ }
+ });
+ rv_collectionList.setAdapter(collectionListViewAdapter);
+ //
+ anim_imageSwitcher_lin = AnimationUtils.loadAnimation(this, R.anim.image_switcher_lin);
+ anim_imageSwitcher_lout = AnimationUtils.loadAnimation(this, R.anim.image_switcher_lout);
+ anim_imageSwitcher_rin = AnimationUtils.loadAnimation(this, R.anim.image_switcher_rin);
+ anim_imageSwitcher_rout = AnimationUtils.loadAnimation(this, R.anim.image_switcher_rout);
+ anim_imageSwitcher_down = AnimationUtils.loadAnimation(this, R.anim.image_switcher_down);
+ anim_imageSwitcher_up = AnimationUtils.loadAnimation(this, R.anim.image_switcher_up);
+ //
+ imageSwitcher.setFactory(() -> {
+ ImageView imageView = new ImageView(this);
+ imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
+ imageView.setLayoutParams(
+ new ImageSwitcher.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT,
+ LinearLayout.LayoutParams.MATCH_PARENT));
+ imageView.setBackgroundColor(0xFFFFFFFF);
+ return imageView;
+ });
+ //
+ intent_selectToCollection = new Intent(this, SelectCollectionActivity.class);
+ //
+ arl_directoryChooser = registerForActivityResult(
+ new ActivityResultContracts.StartActivityForResult(), result -> {
+ if (result.getResultCode() == Activity.RESULT_OK) {
+ Bundle bundle = result.getData().getExtras();
+ File baseDirectory = (File) bundle.get(DirectoryChooserActivity.KEY_SELECTED_FILE);
+ collectionListViewAdapter.setBaseDirectory(baseDirectory);
+ menu_options.findItem(R.id.create_collection).setEnabled(true);
+ menu_options.findItem(R.id.delete_collection).setEnabled(false);
+ menu_options.findItem(R.id.rename_collection).setEnabled(false);
+ }
});
- rv_fileList.setAdapter(fileListViewAdapter);
- //
- collectionListViewAdapter = new CollectionListViewAdapter(this);
- collectionListViewAdapter.setOnCollectionChangedListener((collection, item) -> {
- fileListViewAdapter.setCollection(collection, item);
- setTitle(collection.getName());
- drawerLayout_main.closeDrawers();
- if (!collection.equals(collectionListViewAdapter.getBaseDirectory())) {
- menu_options.findItem(R.id.delete_collection).setEnabled(true);
- menu_options.findItem(R.id.rename_collection).setEnabled(true);
- } else {
- menu_options.findItem(R.id.delete_collection).setEnabled(false);
- menu_options.findItem(R.id.rename_collection).setEnabled(false);
+ //
+ arl_selectToCollection = registerForActivityResult(
+ new ActivityResultContracts.StartActivityForResult(), result -> {
+ if (result.getResultCode() == Activity.RESULT_OK) {
+ Bundle bundle = result.getData().getExtras();
+ File toCollection = (File) bundle.get(SelectCollectionActivity.KEY_SELECTED_COLLECTION);
+ File selectedItem = fileListViewAdapter.getCurrentItem();
+ File toFile = new File(
+ toCollection.getPath() + File.separatorChar + selectedItem.getName());
+ int counter = 0;
+ while (toFile.exists()) {
+ toFile = new File(toCollection.getPath() + File.separatorChar + counter + '_'
+ + selectedItem.getName());
+ counter++;
}
- });
- rv_collectionList.setAdapter(collectionListViewAdapter);
- //
- anim_imageSwitcher_lin = AnimationUtils.loadAnimation(this, R.anim.image_switcher_lin);
- anim_imageSwitcher_lout = AnimationUtils.loadAnimation(this, R.anim.image_switcher_lout);
- anim_imageSwitcher_rin = AnimationUtils.loadAnimation(this, R.anim.image_switcher_rin);
- anim_imageSwitcher_rout = AnimationUtils.loadAnimation(this, R.anim.image_switcher_rout);
- anim_imageSwitcher_down = AnimationUtils.loadAnimation(this, R.anim.image_switcher_down);
- anim_imageSwitcher_up = AnimationUtils.loadAnimation(this, R.anim.image_switcher_up);
- //
- imageSwitcher.setFactory(() -> {
- ImageView imageView = new ImageView(this);
- imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);
- imageView.setLayoutParams(new ImageSwitcher.LayoutParams(
- LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT));
- imageView.setBackgroundColor(0xFFFFFFFF);
- return imageView;
- });
- //
- intent_selectToCollection = new Intent(this, SelectCollectionActivity.class);
- //
- arl_directoryChooser = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), result -> {
- if (result.getResultCode() == Activity.RESULT_OK) {
- Bundle bundle = result.getData().getExtras();
- File baseDirectory = (File) bundle.get(DirectoryChooserActivity.KEY_SELECTED_FILE);
- collectionListViewAdapter.setBaseDirectory(baseDirectory);
- menu_options.findItem(R.id.create_collection).setEnabled(true);
- menu_options.findItem(R.id.delete_collection).setEnabled(false);
- menu_options.findItem(R.id.rename_collection).setEnabled(false);
+ if (selectedItem.renameTo(toFile)) {
+ fileListViewAdapter.removeCurrentItem(false);
}
+ }
});
- //
- arl_selectToCollection = registerForActivityResult(new ActivityResultContracts.StartActivityForResult(), result -> {
- if (result.getResultCode() == Activity.RESULT_OK) {
- Bundle bundle = result.getData().getExtras();
- File toCollection = (File) bundle.get(SelectCollectionActivity.KEY_SELECTED_COLLECTION);
- File selectedItem = fileListViewAdapter.getCurrentItem();
- File toFile = new File(toCollection.getPath() + File.separatorChar + selectedItem.getName());
- int counter = 0;
- while (toFile.exists()) {
- toFile = new File(toCollection.getPath() + File.separatorChar + counter + '_' + selectedItem.getName());
- counter++;
- }
- if (selectedItem.renameTo(toFile)) {
- fileListViewAdapter.removeCurrentItem(false);
- }
- }
- });
- //
- gestureDetector = new GestureDetectorCompat(this, new SimpleGestureListener());
- drawerLayout_main.setOnTouchListener((view, motionEvent) -> {
- //synchronized (drawerStateSync) {
- if (drawerState == DrawerLayout.STATE_IDLE) {
- gestureDetector.onTouchEvent(motionEvent);
- }
- //}
- return false;
- });
- drawerLayout_main.addDrawerListener(new DrawerLayout.DrawerListener() {
- @Override
- public void onDrawerSlide(@NonNull View drawerView, float slideOffset) {
-
- }
-
- @Override
- public void onDrawerOpened(@NonNull View drawerView) {
+ //
+ gestureDetector = new GestureDetectorCompat(this, new SimpleGestureListener());
+ drawerLayout_main.setOnTouchListener((view, motionEvent) -> {
+ //synchronized (drawerStateSync) {
+ if (drawerState == DrawerLayout.STATE_IDLE) {
+ gestureDetector.onTouchEvent(motionEvent);
+ }
+ //}
+ return false;
+ });
+ drawerLayout_main.addDrawerListener(new DrawerLayout.DrawerListener() {
+ @Override
+ public void onDrawerSlide(@NonNull View drawerView, float slideOffset) { }
- }
-
- @Override
- public void onDrawerClosed(@NonNull View drawerView) {
+ @Override
+ public void onDrawerOpened(@NonNull View drawerView) { }
- }
+ @Override
+ public void onDrawerClosed(@NonNull View drawerView) { }
- @Override
- public void onDrawerStateChanged(int newState) {
- //synchronized (drawerStateSync) {
- drawerState = newState;
- //}
- }
- });
- //
- adb_deleteFile = new AlertDialog.Builder(this);
- //
- File session = new File(getExternalFilesDir(null).getPath()
- + File.separatorChar + SESSION_FILE_NAME);
- if (session.exists()) {
- try (BufferedReader bw = new BufferedReader(new InputStreamReader(
- new FileInputStream(session), StandardCharsets.UTF_8))) {
- String baseDirectory = bw.readLine();
- String collectionName = bw.readLine();
- String fileName = bw.readLine();
- File baseFile = new File(baseDirectory);
- if (baseFile.exists()) {
- File collectionFile = new File(baseFile.getName().equalsIgnoreCase(collectionName) ?
- baseDirectory : baseDirectory + File.separatorChar + collectionName);
- if (!collectionFile.exists()) {
- collectionFile = null;
- }
- File itemFile = new File(collectionFile.getPath() + File.separatorChar + fileName);
- if (!itemFile.exists()) {
- itemFile = null;
- }
- collectionListViewAdapter.init(baseFile, collectionFile, itemFile);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
+ @Override
+ public void onDrawerStateChanged(int newState) {
+ //synchronized (drawerStateSync) {
+ drawerState = newState;
+ //}
+ }
+ });
+ //
+ adb_deleteFile = new AlertDialog.Builder(this);
+ //
+ String sessionFilePath = getFilesDir().getPath() + File.separatorChar + SESSION_FILE_NAME;
+ File sessionFile = new File(sessionFilePath);
+ if (sessionFile.exists()) {
+ try (BufferedReader bw = new BufferedReader(
+ new InputStreamReader(new FileInputStream(sessionFile), StandardCharsets.UTF_8))) {
+ String baseDirectory = bw.readLine();
+ String collectionName = bw.readLine();
+ String fileName = bw.readLine();
+ File baseFile = new File(baseDirectory);
+ if (baseFile.exists()) {
+ File collectionFile = new File(
+ baseFile.getName().equalsIgnoreCase(collectionName) ? baseDirectory
+ : baseDirectory + File.separatorChar + collectionName);
+ if (!collectionFile.exists()) {
+ collectionFile = null;
+ }
+ File itemFile = new File(collectionFile.getPath() + File.separatorChar + fileName);
+ if (!itemFile.exists()) {
+ itemFile = null;
+ }
+ collectionListViewAdapter.init(baseFile, collectionFile, itemFile);
}
+ } catch (Exception e) {
+ e.printStackTrace(System.out);
+ }
}
+ }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.main_menu, menu);
- menu_options = menu;
- if (collectionListViewAdapter.getItemCount() > 0) {
- menu.findItem(R.id.create_collection).setEnabled(true);
- if (!collectionListViewAdapter.getCurrentCollection().equals(
- collectionListViewAdapter.getBaseDirectory())) {
- menu.findItem(R.id.delete_collection).setEnabled(true);
- menu.findItem(R.id.rename_collection).setEnabled(true);
- }
- }
- return true;
+ @Override
+ public boolean onCreateOptionsMenu(Menu menu) {
+ getMenuInflater().inflate(R.menu.main_menu, menu);
+ menu_options = menu;
+ if (collectionListViewAdapter.getItemCount() > 0) {
+ menu.findItem(R.id.create_collection).setEnabled(true);
+ if (!collectionListViewAdapter.getCurrentCollection()
+ .equals(collectionListViewAdapter.getBaseDirectory())) {
+ menu.findItem(R.id.delete_collection).setEnabled(true);
+ menu.findItem(R.id.rename_collection).setEnabled(true);
+ }
}
+ return true;
+ }
- @SuppressLint("NonConstantResourceId")
- @Override
- public boolean onOptionsItemSelected(@NonNull MenuItem item) {
- switch (item.getItemId()) {
- case R.id.open_folder:
- Intent chooseFile = new Intent(this, DirectoryChooserActivity.class);
- arl_directoryChooser.launch(chooseFile);
- break;
- case R.id.create_collection:
- if (collectionListViewAdapter.getItemCount() > 0) {
- InputAlertDialog inputAlertDialog = new InputAlertDialog(this);
- inputAlertDialog.setTitle(R.string.create_collection_dialog_title);
- inputAlertDialog.setInputAlertDialogActions(new InputAlertDialog.InputAlertDialogActions() {
- @Override
- public String OnValidation(String text) {
- if ("".equals(text)) {
- return getString(R.string.edit_collection_validation_empty_name);
- }
- if (CHECK_SPECIAL_PATH_SYMBOLS.matcher(text).matches()) {
- return getString(R.string.edit_collection_validation_forbidden_symbols);
- }
- String basePath = collectionListViewAdapter.getBaseDirectory().getPath();
- File checkDirectory = new File(basePath + File.separatorChar + text);
- if (checkDirectory.exists()) {
- return getString(R.string.edit_collection_validation_exist);
- }
- return null;
- }
-
- @Override
- public void OnSuccess(String text) {
- String basePath = collectionListViewAdapter.getBaseDirectory().getPath();
- File collection = new File(basePath + File.separatorChar + text);
- if (collection.mkdir()) {
- collectionListViewAdapter.add(collection);
- }
- }
- });
- inputAlertDialog.show();
- break;
- }
- case R.id.delete_collection:
- AlertDialog.Builder confirmDeleteColl = new AlertDialog.Builder(this)
- .setMessage(getString(R.string.delete_collection_confirm,
- collectionListViewAdapter.getCurrentCollection().getName()))
- .setPositiveButton(R.string.confirm_yes, (dialogInterface, id) -> {
- collectionListViewAdapter.deleteCurrent(this);
- dialogInterface.dismiss();
- })
- .setNegativeButton(R.string.confirm_no, (dialogInterface, id) -> {
- dialogInterface.dismiss();
- });
- confirmDeleteColl.show();
- break;
- case R.id.rename_collection:
- Activity _this = this;
- InputAlertDialog renameCollection = new InputAlertDialog(this);
- renameCollection.setInputAlertDialogActions(new InputAlertDialog.InputAlertDialogActions() {
- @Override
- public String OnValidation(String text) {
- if ("".equals(text)) {
- return getString(R.string.edit_collection_validation_empty_name);
- }
- if (CHECK_SPECIAL_PATH_SYMBOLS.matcher(text).matches()) {
- return getString(R.string.edit_collection_validation_forbidden_symbols);
- }
- String basePath = collectionListViewAdapter.getBaseDirectory().getPath();
- File checkDirectory = new File(basePath + File.separatorChar + text);
- if (checkDirectory.exists()) {
- return getString(R.string.edit_collection_validation_exist);
- }
- return null;
- }
+ @SuppressLint("NonConstantResourceId")
+ @Override
+ public boolean onOptionsItemSelected(@NonNull MenuItem item) {
+ int optionItemId = item.getItemId();
+ if (R.id.open_folder == optionItemId) {
+ Intent chooseFile = new Intent(this, DirectoryChooserActivity.class);
+ arl_directoryChooser.launch(chooseFile);
+ } else if (R.id.create_collection == optionItemId) {
+ if (collectionListViewAdapter.getItemCount() <= 0) {
+ return true;
+ }
+ InputAlertDialog inputAlertDialog = new InputAlertDialog(this);
+ inputAlertDialog.setTitle(R.string.create_collection_dialog_title);
+ inputAlertDialog.setInputAlertDialogActions(new InputAlertDialog.InputAlertDialogActions() {
+ @Override
+ public String OnValidation(String text) {
+ if ("".equals(text)) {
+ return getString(R.string.edit_collection_validation_empty_name);
+ }
+ if (CHECK_SPECIAL_PATH_SYMBOLS.matcher(text).matches()) {
+ return getString(R.string.edit_collection_validation_forbidden_symbols);
+ }
+ String basePath = collectionListViewAdapter.getBaseDirectory().getPath();
+ File checkDirectory = new File(basePath + File.separatorChar + text);
+ if (checkDirectory.exists()) {
+ return getString(R.string.edit_collection_validation_exist);
+ }
+ return null;
+ }
- @Override
- public void OnSuccess(String text) {
- if (collectionListViewAdapter.renameCurrent(text)) {
- _this.setTitle(text);
- }
- }
- });
- renameCollection.show();
- break;
+ @Override
+ public void OnSuccess(String text) {
+ String basePath = collectionListViewAdapter.getBaseDirectory().getPath();
+ File collection = new File(basePath + File.separatorChar + text);
+ if (collection.mkdir()) {
+ collectionListViewAdapter.add(collection);
+ }
+ }
+ });
+ inputAlertDialog.show();
+ } else if (R.id.delete_collection == optionItemId) {
+ AlertDialog.Builder confirmDeleteColl = new AlertDialog.Builder(this).setMessage(
+ getString(R.string.delete_collection_confirm,
+ collectionListViewAdapter.getCurrentCollection().getName()))
+ .setPositiveButton(R.string.confirm_yes, (dialogInterface, id) -> {
+ collectionListViewAdapter.deleteCurrent(this);
+ dialogInterface.dismiss();
+ }).setNegativeButton(R.string.confirm_no, (dialogInterface, id) -> {
+ dialogInterface.dismiss();
+ });
+ confirmDeleteColl.show();
+ } else if (R.id.rename_collection == optionItemId) {
+ Activity parentThis = this;
+ InputAlertDialog renameCollection = new InputAlertDialog(this);
+ renameCollection.setInputAlertDialogActions(new InputAlertDialog.InputAlertDialogActions() {
+ @Override
+ public String OnValidation(String text) {
+ if ("".equals(text)) {
+ return getString(R.string.edit_collection_validation_empty_name);
+ }
+ if (CHECK_SPECIAL_PATH_SYMBOLS.matcher(text).matches()) {
+ return getString(R.string.edit_collection_validation_forbidden_symbols);
+ }
+ String basePath = collectionListViewAdapter.getBaseDirectory().getPath();
+ File checkDirectory = new File(basePath + File.separatorChar + text);
+ if (checkDirectory.exists()) {
+ return getString(R.string.edit_collection_validation_exist);
+ }
+ return null;
}
- return true;
- }
- class SimpleGestureListener extends GestureDetector.SimpleOnGestureListener {
@Override
- public boolean onFling(MotionEvent motionEvent, MotionEvent motionEvent1, float v, float v1) {
- float sizeX = Math.abs(motionEvent.getX() - motionEvent1.getX());
- float sizeY = Math.abs(motionEvent.getY() - motionEvent1.getY());
- if (sizeX > sizeY && sizeX > 50.0d) {
- if (motionEvent.getX() > motionEvent1.getX()) {
- //image_switcher.setInAnimation(image_switcher_rin);
- //image_switcher.setOutAnimation(image_switcher_rout);
- fileListViewAdapter.next();
- } else {
- //image_switcher.setInAnimation(image_switcher_lin);
- //image_switcher.setOutAnimation(image_switcher_lout);
- fileListViewAdapter.previous();
- }
- } else if (sizeY > 50.0d && fileListViewAdapter.getItemCount() > 0) {
- if (motionEvent.getY() < motionEvent1.getY()) {
- intent_selectToCollection.putExtra(SelectCollectionActivity.KEY_BASE_DIRECTORY,
- collectionListViewAdapter.getBaseDirectory());
- intent_selectToCollection.putExtra(SelectCollectionActivity.KEY_SELECTED_COLLECTION,
- collectionListViewAdapter.getCurrentCollection());
- arl_selectToCollection.launch(intent_selectToCollection);
- } else {
- File currentItem = fileListViewAdapter.getCurrentItem();
- adb_deleteFile.setMessage(getString(R.string.delete_collection_item_confirm,
- currentItem.getName()))
- .setPositiveButton(R.string.confirm_yes, (dialogInterface, id) -> {
- if (currentItem.delete()) {
- fileListViewAdapter.removeCurrentItem(true);
- }
- dialogInterface.dismiss();
- })
- .setNegativeButton(R.string.confirm_no, (dialogInterface, id) -> {
- dialogInterface.dismiss();
- });
- adb_deleteFile.show();
- }
- }
- return true;
+ public void OnSuccess(String text) {
+ if (collectionListViewAdapter.renameCurrent(text)) {
+ parentThis.setTitle(text);
+ }
}
+ });
+ renameCollection.show();
}
+ return true;
+ }
+ class SimpleGestureListener extends GestureDetector.SimpleOnGestureListener {
@Override
- protected void onStop() {
- if (collectionListViewAdapter.getItemCount() > 0) {
- File session = new File(getExternalFilesDir(null).getPath()
- + File.separatorChar + SESSION_FILE_NAME);
- try (BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(
- new FileOutputStream(session, false), StandardCharsets.UTF_8))) {
- bw.write(collectionListViewAdapter.getBaseDirectory().getPath());
- bw.newLine();
- bw.write(collectionListViewAdapter.getCurrentCollection().getName());
- bw.newLine();
- bw.write(fileListViewAdapter.getCurrentItem().getName());
- } catch (Exception e) {
- e.printStackTrace();
- }
+ public boolean onFling(MotionEvent motionEvent, MotionEvent motionEvent1, float v, float v1) {
+ float sizeX = Math.abs(motionEvent.getX() - motionEvent1.getX());
+ float sizeY = Math.abs(motionEvent.getY() - motionEvent1.getY());
+ if (sizeX > sizeY && sizeX > 50.0d) {
+ if (motionEvent.getX() > motionEvent1.getX()) {
+ //image_switcher.setInAnimation(image_switcher_rin);
+ //image_switcher.setOutAnimation(image_switcher_rout);
+ fileListViewAdapter.next();
+ } else {
+ //image_switcher.setInAnimation(image_switcher_lin);
+ //image_switcher.setOutAnimation(image_switcher_lout);
+ fileListViewAdapter.previous();
+ }
+ } else if (sizeY > 50.0d && fileListViewAdapter.getItemCount() > 0) {
+ if (motionEvent.getY() < motionEvent1.getY()) {
+ intent_selectToCollection.putExtra(SelectCollectionActivity.KEY_BASE_DIRECTORY,
+ collectionListViewAdapter.getBaseDirectory());
+ intent_selectToCollection.putExtra(SelectCollectionActivity.KEY_SELECTED_COLLECTION,
+ collectionListViewAdapter.getCurrentCollection());
+ arl_selectToCollection.launch(intent_selectToCollection);
+ } else {
+ File currentItem = fileListViewAdapter.getCurrentItem();
+ adb_deleteFile.setMessage(
+ getString(R.string.delete_collection_item_confirm, currentItem.getName()))
+ .setPositiveButton(R.string.confirm_yes, (dialogInterface, id) -> {
+ if (currentItem.delete()) {
+ fileListViewAdapter.removeCurrentItem(true);
+ }
+ dialogInterface.dismiss();
+ }).setNegativeButton(R.string.confirm_no, (dialogInterface, id) -> {
+ dialogInterface.dismiss();
+ });
+ adb_deleteFile.show();
}
- super.onStop();
+ }
+ return true;
+ }
+ }
+
+ @Override
+ protected void onStop() {
+ if (collectionListViewAdapter.getItemCount() > 0) {
+ String sessionFilePath = getFilesDir().getPath() + File.separatorChar + SESSION_FILE_NAME;
+ File sessionFile = new File(sessionFilePath);
+ try (BufferedWriter bw = new BufferedWriter(
+ new OutputStreamWriter(new FileOutputStream(sessionFile, false),
+ StandardCharsets.UTF_8))) {
+ bw.write(collectionListViewAdapter.getBaseDirectory().getPath());
+ bw.newLine();
+ bw.write(collectionListViewAdapter.getCurrentCollection().getName());
+ bw.newLine();
+ bw.write(fileListViewAdapter.getCurrentItem().getName());
+ } catch (Exception e) {
+ e.printStackTrace(System.out);
+ }
}
+ super.onStop();
+ }
}
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 0f26153..8412920 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,6 +1,6 @@
buildscript {
ext {
- agp_version = '8.6.1'
+ agp_version = '8.7.3'
}
repositories {
google()