1. 19 Sep, 2023 1 commit
    • Greg Spencer's avatar
      Remove 'must be non-null' and 'must not be null' comments from non-framework libraries (#134994) · 4ce7fdd9
      Greg Spencer authored
      ## Description
      
      This removes all of the comments that are of the form "so-and-so must not be null" or "so-and-so must be non-null" from the cases where those values are defines as non-nullable values.
      
      This PR removes them from the library in the repo that don't have anything to do with the framework.
      
      This was done by hand, since it really didn't lend itself to scripting, so it needs to be more than just spot-checked, I think. I was careful to leave any comment that referred to parameters that were nullable, but I may have missed some.
      
      In addition to being no longer relevant after null safety has been made the default, these comments were largely fragile, in that it was easy for them to get out of date, and not be accurate anymore anyhow.
      
      This did create a number of constructor comments which basically say "Creates a [Foo].", but I don't really know how to avoid that in a large scale change, since there's not much you can really say in a lot of cases.  I think we might consider some leniency for constructors to the "Comment must be meaningful" style guidance (which we de facto have already, since there are a bunch of these).
      
      ## Related PRs
      - https://github.com/flutter/flutter/pull/134984
      - https://github.com/flutter/flutter/pull/134991
      - https://github.com/flutter/flutter/pull/134992
      - https://github.com/flutter/flutter/pull/134993
      
      ## Tests
       - Documentation only change.
      4ce7fdd9
  2. 17 Feb, 2023 1 commit
  3. 30 Jun, 2022 1 commit
  4. 21 Jun, 2022 1 commit
  5. 16 Jun, 2022 1 commit
  6. 12 May, 2022 1 commit
  7. 11 Oct, 2021 1 commit
  8. 27 Jul, 2021 1 commit
  9. 14 Jul, 2021 1 commit
    • Tong Mu's avatar
      New scheme for keyboard logical key ID (#85121) · c8d0b1d9
      Tong Mu authored
      This PR updates the ID used by logical keyboard keys.
      
      The logical key ID is still composed of 2 parts: 32 bits of value, and 8 bits of plane. But the assignment of planes has been drastically changed. HID plane is removed, and unprintable plane and Flutter plane are added. This is to reflect the new generation method for logical key IDs. Now keys that are defined by Flutter but not by dom_key_data are placed into the Flutter plane, including numpad keys, sided modifier keys, and gamepad keys. The values for platform planes have also been adjusted.
      
      The generation script and README have been updated accordingly as well.
      
      A new file, test_utils/key_codes.h is now generated to assist engine unit testing.
      
      All lists generated by the script are now sorted by the key.
      c8d0b1d9
  10. 01 Jul, 2021 1 commit
  11. 14 Jun, 2021 1 commit
  12. 26 May, 2021 1 commit
    • Greg Spencer's avatar
      Add iOS key map generation, make macOS var naming consistent with repo (#83146) · 6b087c74
      Greg Spencer authored
      This adds iOS key map generation that uses std::maps. It uses std::maps because on iOS if we use NSDictionaries, then when XCode loads the dylib, the initialization of those status NSDictionaries hasn't yet occurred, and it crashes the app. std::maps have a well-defined static behavior, and are correctly initialized.
      
      I also made the naming of variables, fields, etc. consistent for macOS. We variously had macosFoo, macOSFoo, and macOsFoo. I eliminated macOsFoo and macosFoo, since the rest of the repo uses macOSFoo for lowerCamelCase names (with only a few exceptions). I used iOSFoo for iOS.
      6b087c74
  13. 21 May, 2021 1 commit
  14. 01 May, 2021 1 commit