flutter/dev/integration_tests/flutter_gallery
Chris Bracken 68f375fe38
[macOS] support secure restorable state by default (#151605)
By default, Flutter apps only do default AppKit app serialisation of
Window location etc. and by default, state serialisation in AppKit apps
is compatible with `NSSecureCoding`. AppKit apps generated since Xcode
13.2 include this method in the app delegate generated by the default
app template.

Background
==========

This method was added to opt into having [de]serialization require a
coder implementing the `NSSecureCoding` protocol. Apple wasn't able to
force this across the board, because `NSSecureCoding` limits certain
behaviours during deserialisation, which some third-party apps have have
previously relied on.

Specific background on the sorts of vulnerabilities that
`NSSecureCoding` was designed to prevent are described in the
`NSSecureCoding` documentation:

https://developer.apple.com/documentation/foundation/nssecurecoding?language=objc

A demonstration of a root privilege escalation and SIP bypass
vulnerability is described in the following blog post:
https://sector7.computest.nl/post/2022-08-process-injection-breaking-all-macos-security-layers-with-a-single-vulnerability/

Fixes: https://github.com/flutter/flutter/issues/150062

## 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 `///`).
- [ ] 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/blob/main/docs/contributing/Tree-hygiene.md#overview
[Tree Hygiene]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
[test-exempt]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
[Flutter Style Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
[Features we expect every widget to implement]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#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/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
[Discord]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
[Data Driven Fixes]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
2024-07-12 11:08:26 -07:00
..
android Manual engine roll to ddd4814 (#150952) 2024-06-27 21:57:32 +00:00
ios Migrate Xcode projects last version checks to Xcode 15.1 (#140256) 2024-01-03 23:05:46 +00:00
lib Remove discontinued device_info and connectivity plugins from flutter_gallery, roll pub packages (#150585) 2024-06-21 23:10:24 +00:00
linux Deletes files that should be ignored (#127984) 2023-06-29 19:45:22 +00:00
macos [macOS] support secure restorable state by default (#151605) 2024-07-12 11:08:26 -07:00
test Reland: Request focus if accessibility focus is given to a Focus widget (#142942) (#149840) 2024-06-12 20:05:10 +00:00
test_driver [devicelab] retain first frame data in certain integration tests. (#143419) 2024-02-14 03:58:58 +00:00
test_memory Fix flaky complex_layout_scroll_perf__memory & flutter_gallery__memory_nav (#150368) 2024-06-17 17:14:47 +00:00
tool Move flutter_gallery to the testing folder (#52532) 2020-03-16 10:31:42 +01:00
web Fixes documentation inconsistencies around 'material' and 'material design' (#102632) 2022-04-27 09:29:06 -07:00
windows [Windows] Drop support for Windows 7/8 apps in template (#146668) 2024-04-12 01:07:20 +00:00
.gitignore Fix: use --web-launch-url and --web-hostname arguments in flutter drive (#131763) 2023-08-10 20:53:08 +00:00
analysis_options.yaml Enable avoid_print lint. (#91444) 2021-10-07 16:48:04 -07:00
pubspec.yaml Roll pub packages (#151492) 2024-07-09 22:47:35 +00:00
README.md Remove discontinued device_info and connectivity plugins from flutter_gallery, roll pub packages (#150585) 2024-06-21 23:10:24 +00:00

Flutter gallery

An older copy of the Flutter gallery demo application used for integration testing.

For the current Flutter Gallery app sample, see this repo: https://github.com/flutter/gallery

Icon

Android launcher icons were generated using Android Asset Studio: https://romannurik.github.io/AndroidAssetStudio/icons-launcher.html#foreground.type=image&foreground.space.trim=1&foreground.space.pad=0.1&foreColor=607d8b%2C0&crop=0&backgroundShape=square&backColor=fafafa%2C100&effects=none

Video demo

The video demo is not supported on iOS simulators.