60 Commits

Author SHA1 Message Date
Michael Goderbauer
5491c8c146
Auto-format Framework (#160545)
This auto-formats all *.dart files in the repository outside of the
`engine` subdirectory and enforces that these files stay formatted with
a presubmit check.

**Reviewers:** Please carefully review all the commits except for the
one titled "formatted". The "formatted" commit was auto-generated by
running `dev/tools/format.sh -a -f`. The other commits were hand-crafted
to prepare the repo for the formatting change. I recommend reviewing the
commits one-by-one via the "Commits" tab and avoiding Github's "Files
changed" tab as it will likely slow down your browser because of the
size of this PR.

---------

Co-authored-by: Kate Lovett <katelovett@google.com>
Co-authored-by: LongCatIsLooong <31859944+LongCatIsLooong@users.noreply.github.com>
2024-12-19 20:06:21 +00:00
Nate Wilson
d07a165d22
Implementing a few switch statements (#150946)
I really like how patterns can be used for variable assignment and avoiding duplicated logic. (related: #150942)

```dart
// before
final GestureRecognizer? recognizer = info.recognizer;
if (recognizer is TapGestureRecognizer) {
  if (recognizer.onTap != null) {
    configuration.onTap = recognizer.onTap;
    configuration.isLink = true;
  }
} else if (recognizer is DoubleTapGestureRecognizer) {
  if (recognizer.onDoubleTap != null) {
    configuration.onTap = recognizer.onDoubleTap;
    configuration.isLink = true;
  }
}

// after
switch (info.recognizer) {
  case TapGestureRecognizer(:final VoidCallback? onTap):
  case DoubleTapGestureRecognizer(onDoubleTap: final VoidCallback? onTap):
    if (onTap != null) {
      configuration.onTap = onTap;
      configuration.isLink = true;
    }
}
```
2024-07-01 23:36:32 +00:00
Nate
870c5541c3
switch expressions: finale (#148711)
### fixes #136139

<br>

<details open> <summary><b>getting sentimental in the PR description</b> (click to collapse)<br><br></summary>

The past 7 months have been quite the journey—I made some huge blunders and some huge accomplishments—a very fun time overall.

I really appreciate the people who took the time to perform code review for my refactoring shenanigans: **christopherfujino**, **andrewkolos**, **LongCatIsLooong**, **gspencergoog**, **loic-sharma**, **Piinks**, **bernaferrari**, **bartekpacia**, **bleroux**, **kevmoo**, **rakudrama**, **XilaiZhang**, **QuncCccccc**, **MominRaza**, and **victorsanni**.

And a huge shoutout to 2 individuals:
- @justinmc, for offering to sponsor me for commit access (words could not describe my excitement)
- @goderbauer, for being super duper proactive and consistent with code review

<br>

</details>

This pull request makes 13 "switch statements → switch expressions" PRs in total, reducing the LOC in this repo by **1,974**!

From now on, I'll make sure to request a test exemption for each refactoring PR 🙂
2024-05-21 16:18:05 +00:00
Kallen Tu
9fd9f042fc
Add info strings to code blocks. (#146085)
In preparation to add the lint
`missing_code_block_language_in_doc_comment`, added info strings to a
bunch of fenced code blocks.

Related to issue: https://github.com/dart-lang/linter/issues/4904

## Pre-launch Checklist

- [X] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [X] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [X] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [X] I signed the [CLA].
- [X] I listed at least one issue that this PR fixes in the description
above.
- [X] I updated/added relevant documentation (doc comments with `///`).
- [X] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [X] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [X] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel
on [Discord].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#overview
[Tree Hygiene]: https://github.com/flutter/flutter/wiki/Tree-hygiene
[test-exempt]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#features-we-expect-every-widget-to-implement
[CLA]: https://cla.developers.google.com/
[flutter/tests]: https://github.com/flutter/tests
[breaking change policy]:
https://github.com/flutter/flutter/wiki/Tree-hygiene#handling-breaking-changes
[Discord]: https://github.com/flutter/flutter/wiki/Chat
[Data Driven Fixes]:
https://github.com/flutter/flutter/wiki/Data-driven-Fixes
2024-04-01 14:05:16 -07:00
Anis Alibegić
e063f56832
Fixed few typos (#141543)
I continued [my mission](https://github.com/flutter/flutter/pull/141431) to find as many typos as I could. This time it's a smaller set than before.

There is no need for issues since it's a typo fix.
2024-01-16 21:40:08 +00:00
Ian Hickson
5fa8de05ee
l10n-related documentation improvements (#133114) 2023-08-24 21:54:56 +00:00
Tae Hyung Kim
c0c5901c0b
Fix gen_date_localizations script and regenerate (#124547)
Internal bug: b/256596915

Turns out we need to regenerate date localizations in order for the
`intl` package to be setup properly within Flutter. This PR fixes the
script (since it assumes the use of the old `.packages` way of handling
packages), and regenerates the `generated_date_localizations.dart` file.
2023-04-11 16:54:54 -07:00
chunhtai
9e4b5fb7d9
Adds i18n to widget layer (#123620)
Adds i18n to widget layer
2023-04-04 22:57:35 +00:00
Michael Goderbauer
fda9ecfef7
Remove 1745 decorative breaks (#123259)
Remove 1745 decorative breaks
2023-03-22 21:12:22 +00:00
Michael Goderbauer
99b5262b21
Remove unnecessary null checks in dev/tools (#118845) 2023-01-20 04:06:09 +00:00
Michael Goderbauer
b308555ed1
Enable dangling_library_doc_comments and library_annotations lints (#117365) 2022-12-20 16:03:21 -08:00
Pierre-Louis
0c2f7bc2a2
Remove errant double spaces (#110758) 2022-09-02 04:00:58 +00:00
Michael Goderbauer
10a7c9ba22
Unify analysis options (#108462) 2022-07-28 09:07:49 -07:00
Greg Spencer
6504f2896c
Adds menuBarMenuLabel, and removes unneeded key localizations (#102100)
When I added localizations for shortcut keys, I added some that actually can't be shortcut keys, so I'm removing them again. These are mostly Japanese-specific keys that don't even appear on modern keyboards for the most part.

Also, added menuBarMenuLabel for an accessibility label for menu bar menus.

I modified the code for the localization generation scripts to add a --remove-undefined flag that will remove any localizations that don't appear in the canonical locale.
2022-05-09 09:25:52 -07:00
Jonah Williams
29d814b700
[intl] speed up localization generation and regenerate symbols (#102614) 2022-04-27 11:14:05 -07:00
Ian Hickson
61a0add286
Enable avoid_redundant_argument_values lint (#91409) (#91462) 2021-10-08 09:25:14 -07:00
Zachary Anderson
b9d2177da0
Revert "Enable avoid_redundant_argument_values lint (#91409)" (#91461)
This reverts commit 5fd259be244244e14ff87fee9b6a721625f952cd.
2021-10-07 21:11:07 -07:00
Ian Hickson
5fd259be24
Enable avoid_redundant_argument_values lint (#91409) 2021-10-07 20:13:02 -07:00
Christopher Fujino
5456cad343
Migrate gen_localizations to null-safety (#86051) 2021-07-08 15:06:04 -07:00
Abhishek Ghaskata
4705e0cc19
migrate localization to null safety (#84064)
migrate localization to null safety
2021-06-14 11:23:09 -07:00
Alexandre Ardhuin
34059eec2c
enable lint prefer_interpolation_to_compose_strings (#83407) 2021-06-01 11:14:06 -07:00
Alexandre Ardhuin
0ef0f0ba5e
fix lint from an improved unnecessary_parenthesis (#83433) 2021-05-27 13:39:03 -07:00
Christopher Fujino
8654e4ae3e
begin migrating //flutter/dev/tools to null-safety (#80834) 2021-04-23 20:24:03 -07:00
Phil Quitslund
61c30c41b2
fix sort_directives violations (#80817) 2021-04-21 13:49:03 -07:00
Darren Austin
1c7e34bb20
Migrate flutter_localizations to null safety. (#68645)
Migrate flutter_localizations to null safety.
2020-11-12 15:13:51 -08:00
Shi-Hao Hong
a1a096e35a
[gen-l10n] Fix untranslated messages (#68553) 2020-11-05 16:24:02 -08:00
Alexandre Ardhuin
73301a35a2
Sync lints (#68136) 2020-10-15 15:37:04 -07:00
Shi-Hao Hong
244f5ab598
Expose date symbols and patterns for en_US in framework (#67900)
* Expose date symbols and patterns for en_US in framework
2020-10-13 07:56:10 +08:00
Michael R Fairhurst
7f3c9b6bda
Remove unused 'dart:async' imports. (#65568) 2020-09-16 14:14:06 -07:00
Shi-Hao Hong
b80b432555
Move gen_l10n into flutter_tools (#65025) 2020-09-03 09:26:58 -07:00
Shi-Hao Hong
fd22fc3e35
[gen_l10n] Synthetic package generation by default (#62395)
* synthetic packages by default in gen_l10n tool

* Refactor default path for synthetic package

* Remove unused import

* Code cleanup

* Further improvements to help text

* Refactor synthetic package path

* Remove newlines

* Test cleanup

* clean up logic in inputs and outputs list function

* Update l10n.yaml usage

* only add option if value is non-null

* Update stocks app as proof of concept for synthetic package usage

* Address nits

* print pubspec contents

* add print statements

* Do not allow null value for useSyntheticPackage

* +

* +

* +

* +

* Cleanup

* Add test

* Fix text

* Dont parse pubspec directly

* Test using context

* WIP: generate synthetic packages on pub get -- needs tests

* Allow null value

* Update null handling

* Refactor to properly handle null case

* Fix yamlMap condition

* Fix yaml node for real

* WIP: struggling to write tests

* WIP - take absolute path as an option

* Add tests

* Use environment project directory for synthetic package generation pathway

* Fix typo

* Improve help text

* Update defaults

* Remove unauthorized path import

* Fix pathing issues at synthetic package generation

* Fix typo in test

* Use path.join so projectDir matches up based on OS

* Fix Windows pathing in test

* Remove unnecessary replaceApp code for projectDir.path

* Use globals.fs.currentDirectory.path in resident_runner_test.dart

* Fix merge conflict

* Add test to ensure that synthetic package is generated on pub get

* Fix resident_runner_test.dart tests

* Fix tests

* Use package:file instead of dart:io

* WIP - exploration

* Remove synthetic package use from stocks example

* Update integration test to not use synthetic packages

* Remove trailing whitespace

* flutter pub get runs synth package generation

* Remove more print statements

* Add license header

* WIP - minimally working pub.get

* Use own MockBuildSystem

* Modify test and implementation to be a little cleaner

* Fix flutter pub get invocation

* Use synthetic packages in stocks app

* Revert "Use synthetic packages in stocks app"

This reverts commit 45bf24903c3d4a2a5fd5481d7d6bc36c4a348703.

* Add environment and buildSystem params to flutter test

* Address code review feedback

* +

* Isolate codegen into its own API

* Fix imports

* Slight refactor

* Add one more test for no l10n.yaml file

* Remove unneeded mock class and import in pub_get_test.dart

* More code review feedback

* Remove unnecessary imports

* Remove `return await`s that I missed

* use arrow functions instead
2020-08-31 13:19:41 +08:00
Shi-Hao Hong
0a7c6243fa
[gen_l10n] Absolute project path parameter (#63368) 2020-08-13 05:11:05 -07:00
Shi-Hao Hong
c36b75e45b
Remove Special Handling of Norwegian Locales (#63034)
* Regenerate _no.arb and _nb.arb from scratch

* Revert no <--> nb synonym logic
2020-08-12 07:29:17 +08:00
Shi-Hao Hong
61a04b1551
Fix and address Inconsistencies with Pashto support (#60600)
* Normalize Pashto incomplete translations

* Add comment to README.md about incomplete Pashto support
2020-07-09 15:52:19 +08:00
Darren Austin
b4788f290c
Updated gen_missing_localizations to copy the english strings instead of using 'TBD' for other locales. (#57053) 2020-05-14 11:12:05 -07:00
Shi-Hao Hong
13501af6e6
[gen_l10n] Optionally generate list of inputs/outputs (#56490) 2020-05-07 11:46:02 -07:00
Shi-Hao Hong
c01c46c896
Test to ensure _kn.arb files are properly escaped (#56091)
* Run encode kn character encoding tool when gen_localizations is run

* Add test that ensures *_kn.arb files are properly encoded/escaped in order to be checked in

* Fix *_no.arb test to not incorrectly pass
2020-05-01 18:13:55 -07:00
Shi-Hao Hong
de4f052703
[gen_l10n] Fix unintended breaking change introduced by output-dir option (#55909)
* Fix breaking change introduced by gen_l10n output-dir option
2020-04-28 16:25:59 -07:00
Shi-Hao Hong
9d7af39a5b
[gen_l10n] Output directory option (#55792)
* Add new output-dir option for gen_l10n tool
2020-04-28 13:10:27 -07:00
Per Classon
4451ffca23
Add option for deferred loading to gen_l10n (#53824) 2020-04-09 03:57:01 -07:00
Shi-Hao Hong
5d63637e43
[gen_l10n] Fallback feature for untranslated messages (#53374)
* Generate methods using template resources if they do not exist in other locales

* Added a flag to either output of messages that have not been translated with detail into a file, or display a summary on the terminal.

* Add integration test for fallback message usage
2020-04-08 18:55:50 -07:00
Shi-Hao Hong
365528aad6
Use no locale as synonym for nb (#53880) 2020-04-03 11:56:02 -07:00
gaaclarke
83a74e11d2
Started caching results from iana. (#53286) 2020-03-25 18:16:02 -07:00
Shi-Hao Hong
96fd143cd7
[gen_l10n] Optional Headers (#52125)
* Expose --header and --header-file arguments for gen_l10n
2020-03-11 13:55:54 -07:00
Hans Muller
13e1336e6c
Generate message lookup in gen_l10n (#50733) 2020-02-24 20:17:13 -08:00
Alexandre Ardhuin
f15c887c63
change quote to avoid escapes (#50368) 2020-02-11 20:58:27 +01:00
Alexandre Ardhuin
5c28e3eeea
unnecessary escapes fixes (#50178)
* unnecessary escapes fixes

* replace some strings with raw strings

* update regexp

* address review comments
2020-02-07 06:35:50 +01:00
Hans Muller
82c00c915c
Move the localization_utils camelCase function to LocaleInfo (#50152) 2020-02-05 06:35:49 -08:00
Alexandre Ardhuin
5a8de59a66
refactor generateString to emit simpler dart code (#49334) 2020-01-31 11:57:54 +01:00
Hans Muller
3f2c6ea724
Integration test for the gen_l10n tool (#49586) 2020-01-29 12:45:03 -08:00