Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
52 commits
Select commit Hold shift + click to select a range
116083e
Update `simplistic_editor` for Flutter 3.4 beta
bleroux Sep 27, 2022
2c6d412
Re-enable beta and master CI
bleroux Sep 28, 2022
6d41f95
Disable on master
bleroux Oct 10, 2022
04472cf
Added sample code for using plugins and channels from background isol…
gaaclarke Sep 27, 2022
8b76016
goderbauer feedback 1
gaaclarke Sep 27, 2022
5a38e1a
goderbauer feedback2
gaaclarke Sep 27, 2022
48bf57d
goderbauer feedback 3
gaaclarke Sep 27, 2022
15ec99d
Merge branch 'main' of https://github.com/flutter/samples into pr/1448
domesticmouse Jan 10, 2023
84e6010
Add `background_isolate_channels` to CI
domesticmouse Jan 10, 2023
e0c229f
Enable beta CI
domesticmouse Jan 10, 2023
86535c6
Merge branch 'Update_simplistic_editor_to_flutter_3.4' of https://git…
domesticmouse Jan 10, 2023
5915b94
Merge branch 'background-isolate-channels' of https://github.com/gaac…
domesticmouse Jan 10, 2023
c8f096c
Enable all `stable` CI projects
domesticmouse Jan 10, 2023
179b557
`dart fix --apply`
domesticmouse Jan 10, 2023
3dac29e
`print` -> `denugPrint`
domesticmouse Jan 10, 2023
f8222be
Make deps min version not pinned
domesticmouse Jan 10, 2023
d3b52bd
Drop `_isDebug`
domesticmouse Jan 10, 2023
50baef2
Remove unused import
domesticmouse Jan 10, 2023
a1c0e09
`dart format`
domesticmouse Jan 10, 2023
f9e1711
Fixup `linting_tool`
domesticmouse Jan 10, 2023
35c996f
Fixup `form_app`
domesticmouse Jan 10, 2023
eadbf70
Enable all `master` CI
domesticmouse Jan 10, 2023
e38735e
Basic fixes
domesticmouse Jan 10, 2023
b47ef52
Patch `simplistic_editor`
domesticmouse Jan 10, 2023
c7829fe
Fix nl at eol
domesticmouse Jan 10, 2023
895e989
Comment out `simplistic_editor`
domesticmouse Jan 10, 2023
aba70c9
Incorporating @bleroux's latest changes
domesticmouse Jan 10, 2023
d3088f2
Merge branch 'master' of https://github.com/flutter/samples into beta
domesticmouse Jan 14, 2023
335ae38
Clean up CI scripts
domesticmouse Jan 14, 2023
8006222
Copy `experimental/material_3_demo` to top level
domesticmouse Jan 14, 2023
65b1096
Update `game_template`
domesticmouse Jan 18, 2023
92dc66b
Merge branch 'main' of https://github.com/flutter/samples into beta
domesticmouse Jan 18, 2023
0491e1e
Merge branch 'master' of https://github.com/flutter/samples into beta
domesticmouse Jan 21, 2023
4337b32
Update `animations`
domesticmouse Jan 21, 2023
453a6fe
Update `desktop_photo_search`
domesticmouse Jan 21, 2023
9f13e5f
Update `flutter_maps_firestore`
domesticmouse Jan 21, 2023
8375fac
Update `form_app`
domesticmouse Jan 21, 2023
d45b567
Update `infinite_list`
domesticmouse Jan 21, 2023
afaaecd
Update `isolate_example`
domesticmouse Jan 21, 2023
5cfed89
Update `jsonexample`
domesticmouse Jan 21, 2023
a36decc
Update `navigation_and_routing`
domesticmouse Jan 21, 2023
c754b11
Update `place_tracker`
domesticmouse Jan 21, 2023
b414f5a
Update `platform_channels`
domesticmouse Jan 21, 2023
74b57ff
Update `platform_design`
domesticmouse Jan 21, 2023
2a0daae
Update `provider_shopper`
domesticmouse Jan 21, 2023
97246b5
Fixup `context_menus`
domesticmouse Jan 21, 2023
6b2bfdb
`dart format`
domesticmouse Jan 21, 2023
89a26b7
Merge branch 'master' of https://github.com/flutter/samples into beta
domesticmouse Jan 22, 2023
ec101cb
Merge branch 'main' into beta
domesticmouse Jan 23, 2023
238800b
Update the main `material_3_demo`
domesticmouse Jan 23, 2023
a28337b
Merge branch 'main' into beta
domesticmouse Jan 24, 2023
ddcde05
Make `tool/flutter_ci_script_stable.sh` executable again
domesticmouse Jan 24, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
32 changes: 16 additions & 16 deletions animations/.metadata
Original file line number Diff line number Diff line change
Expand Up @@ -4,35 +4,35 @@
# This file should be version controlled.

version:
revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
channel: stable
revision: 686fe913dc963954b99e62048569cb9ac8e551c8
channel: beta

project_type: app

# Tracks metadata for the flutter migrate command
migration:
platforms:
- platform: root
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
create_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
base_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
- platform: android
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
create_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
base_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
- platform: ios
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
create_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
base_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
- platform: linux
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
create_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
base_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
- platform: macos
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
create_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
base_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
- platform: web
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
create_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
base_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
- platform: windows
create_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
base_revision: ffccd96b62ee8cec7740dab303538c5fc26ac543
create_revision: 686fe913dc963954b99e62048569cb9ac8e551c8
base_revision: 686fe913dc963954b99e62048569cb9ac8e551c8

# User provided section

Expand Down
2 changes: 1 addition & 1 deletion animations/android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ android {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "dev.flutter.animations"
// You can update the following values to match your application needs.
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration.
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
minSdkVersion flutter.minSdkVersion
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
Expand Down
4 changes: 2 additions & 2 deletions animations/android/build.gradle
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
buildscript {
ext.kotlin_version = '1.6.10'
ext.kotlin_version = '1.7.10'
repositories {
google()
mavenCentral()
}

dependencies {
classpath 'com.android.tools.build:gradle:7.1.2'
classpath 'com.android.tools.build:gradle:7.2.0'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
3 changes: 3 additions & 0 deletions animations/codelab_rebuild.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,3 +11,6 @@ steps:
- windows
- name: Flutter recreate
flutter: create --org dev.flutter .
- name: Strip DEVELOPMENT_TEAM
strip-lines-containing: DEVELOPMENT_TEAM =
path: ios/Runner.xcodeproj/project.pbxproj
6 changes: 4 additions & 2 deletions animations/ios/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 50;
objectVersion = 54;
objects = {

/* Begin PBXBuildFile section */
Expand Down Expand Up @@ -171,6 +171,7 @@
/* Begin PBXShellScriptBuildPhase section */
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
Expand All @@ -185,6 +186,7 @@
};
9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
Expand Down Expand Up @@ -478,4 +480,4 @@
/* End XCConfigurationList section */
};
rootObject = 97C146E61CF9000F007C117D /* Project object */;
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion animations/macos/Podfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
platform :osx, '10.11'
platform :osx, '10.14'

# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
Expand Down
9 changes: 5 additions & 4 deletions animations/macos/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 51;
objectVersion = 54;
objects = {

/* Begin PBXAggregateTarget section */
Expand Down Expand Up @@ -235,6 +235,7 @@
/* Begin PBXShellScriptBuildPhase section */
3399D490228B24CF009A79C7 /* ShellScript */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
Expand Down Expand Up @@ -344,7 +345,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.14;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
Expand Down Expand Up @@ -423,7 +424,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.14;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = macosx;
Expand Down Expand Up @@ -470,7 +471,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
MACOSX_DEPLOYMENT_TARGET = 10.11;
MACOSX_DEPLOYMENT_TARGET = 10.14;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = macosx;
SWIFT_COMPILATION_MODE = wholemodule;
Expand Down
2 changes: 1 addition & 1 deletion animations/macos/Runner/Configs/AppInfo.xcconfig
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ PRODUCT_NAME = animations
PRODUCT_BUNDLE_IDENTIFIER = dev.flutter.animations

// The copyright displayed in application information
PRODUCT_COPYRIGHT = Copyright © 2022 dev.flutter. All rights reserved.
PRODUCT_COPYRIGHT = Copyright © 2023 dev.flutter. All rights reserved.
9 changes: 5 additions & 4 deletions animations/web/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,12 @@
_flutter.loader.loadEntrypoint({
serviceWorker: {
serviceWorkerVersion: serviceWorkerVersion,
},
onEntrypointLoaded: function(engineInitializer) {
engineInitializer.initializeEngine().then(function(appRunner) {
appRunner.runApp();
});
}
}).then(function(engineInitializer) {
return engineInitializer.initializeEngine();
}).then(function(appRunner) {
return appRunner.runApp();
});
});
</script>
Expand Down
1 change: 1 addition & 0 deletions animations/windows/runner/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ target_compile_definitions(${BINARY_NAME} PRIVATE "NOMINMAX")
# Add dependency libraries and include directories. Add any application-specific
# dependencies here.
target_link_libraries(${BINARY_NAME} PRIVATE flutter flutter_wrapper_app)
target_link_libraries(${BINARY_NAME} PRIVATE "dwmapi.lib")
target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}")

# Run the Flutter tool portions of the build. This must not be removed.
Expand Down
2 changes: 1 addition & 1 deletion animations/windows/runner/Runner.rc
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ BEGIN
VALUE "FileDescription", "animations" "\0"
VALUE "FileVersion", VERSION_AS_STRING "\0"
VALUE "InternalName", "animations" "\0"
VALUE "LegalCopyright", "Copyright (C) 2022 dev.flutter. All rights reserved." "\0"
VALUE "LegalCopyright", "Copyright (C) 2023 dev.flutter. All rights reserved." "\0"
VALUE "OriginalFilename", "animations.exe" "\0"
VALUE "ProductName", "animations" "\0"
VALUE "ProductVersion", VERSION_AS_STRING "\0"
Expand Down
5 changes: 5 additions & 0 deletions animations/windows/runner/flutter_window.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,11 @@ bool FlutterWindow::OnCreate() {
}
RegisterPlugins(flutter_controller_->engine());
SetChildContent(flutter_controller_->view()->GetNativeWindow());

flutter_controller_->engine()->SetNextFrameCallback([&]() {
this->Show();
});

return true;
}

Expand Down
2 changes: 1 addition & 1 deletion animations/windows/runner/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev,
FlutterWindow window(project);
Win32Window::Point origin(10, 10);
Win32Window::Size size(1280, 720);
if (!window.CreateAndShow(L"animations", origin, size)) {
if (!window.Create(L"animations", origin, size)) {
return EXIT_FAILURE;
}
window.SetQuitOnClose(true);
Expand Down
53 changes: 48 additions & 5 deletions animations/windows/runner/win32_window.cpp
Original file line number Diff line number Diff line change
@@ -1,13 +1,31 @@
#include "win32_window.h"

#include <dwmapi.h>
#include <flutter_windows.h>

#include "resource.h"

namespace {

/// Window attribute that enables dark mode window decorations.
///
/// Redefined in case the developer's machine has a Windows SDK older than
/// version 10.0.22000.0.
/// See: https://docs.microsoft.com/windows/win32/api/dwmapi/ne-dwmapi-dwmwindowattribute
#ifndef DWMWA_USE_IMMERSIVE_DARK_MODE
#define DWMWA_USE_IMMERSIVE_DARK_MODE 20
#endif

constexpr const wchar_t kWindowClassName[] = L"FLUTTER_RUNNER_WIN32_WINDOW";

/// Registry key for app theme preference.
///
/// A value of 0 indicates apps should use dark mode. A non-zero or missing
/// value indicates apps should use light mode.
constexpr const wchar_t kGetPreferredBrightnessRegKey[] =
L"Software\\Microsoft\\Windows\\CurrentVersion\\Themes\\Personalize";
constexpr const wchar_t kGetPreferredBrightnessRegValue[] = L"AppsUseLightTheme";

// The number of Win32Window objects that currently exist.
static int g_active_window_count = 0;

Expand All @@ -31,8 +49,8 @@ void EnableFullDpiSupportIfAvailable(HWND hwnd) {
GetProcAddress(user32_module, "EnableNonClientDpiScaling"));
if (enable_non_client_dpi_scaling != nullptr) {
enable_non_client_dpi_scaling(hwnd);
FreeLibrary(user32_module);
}
FreeLibrary(user32_module);
}

} // namespace
Expand Down Expand Up @@ -102,9 +120,9 @@ Win32Window::~Win32Window() {
Destroy();
}

bool Win32Window::CreateAndShow(const std::wstring& title,
const Point& origin,
const Size& size) {
bool Win32Window::Create(const std::wstring& title,
const Point& origin,
const Size& size) {
Destroy();

const wchar_t* window_class =
Expand All @@ -117,7 +135,7 @@ bool Win32Window::CreateAndShow(const std::wstring& title,
double scale_factor = dpi / 96.0;

HWND window = CreateWindow(
window_class, title.c_str(), WS_OVERLAPPEDWINDOW | WS_VISIBLE,
window_class, title.c_str(), WS_OVERLAPPEDWINDOW,
Scale(origin.x, scale_factor), Scale(origin.y, scale_factor),
Scale(size.width, scale_factor), Scale(size.height, scale_factor),
nullptr, nullptr, GetModuleHandle(nullptr), this);
Expand All @@ -126,9 +144,15 @@ bool Win32Window::CreateAndShow(const std::wstring& title,
return false;
}

UpdateTheme(window);

return OnCreate();
}

bool Win32Window::Show() {
return ShowWindow(window_handle_, SW_SHOWNORMAL);
}

// static
LRESULT CALLBACK Win32Window::WndProc(HWND const window,
UINT const message,
Expand Down Expand Up @@ -188,6 +212,10 @@ Win32Window::MessageHandler(HWND hwnd,
SetFocus(child_content_);
}
return 0;

case WM_DWMCOLORIZATIONCOLORCHANGED:
UpdateTheme(hwnd);
return 0;
}

return DefWindowProc(window_handle_, message, wparam, lparam);
Expand Down Expand Up @@ -243,3 +271,18 @@ bool Win32Window::OnCreate() {
void Win32Window::OnDestroy() {
// No-op; provided for subclasses.
}

void Win32Window::UpdateTheme(HWND const window) {
DWORD light_mode;
DWORD light_mode_size = sizeof(light_mode);
LSTATUS result = RegGetValue(HKEY_CURRENT_USER, kGetPreferredBrightnessRegKey,
kGetPreferredBrightnessRegValue,
RRF_RT_REG_DWORD, nullptr, &light_mode,
&light_mode_size);

if (result == ERROR_SUCCESS) {
BOOL enable_dark_mode = light_mode == 0;
DwmSetWindowAttribute(window, DWMWA_USE_IMMERSIVE_DARK_MODE,
&enable_dark_mode, sizeof(enable_dark_mode));
}
}
18 changes: 11 additions & 7 deletions animations/windows/runner/win32_window.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,15 +28,16 @@ class Win32Window {
Win32Window();
virtual ~Win32Window();

// Creates and shows a win32 window with |title| and position and size using
// Creates a win32 window with |title| that is positioned and sized using
// |origin| and |size|. New windows are created on the default monitor. Window
// sizes are specified to the OS in physical pixels, hence to ensure a
// consistent size to will treat the width height passed in to this function
// as logical pixels and scale to appropriate for the default monitor. Returns
// true if the window was created successfully.
bool CreateAndShow(const std::wstring& title,
const Point& origin,
const Size& size);
// consistent size this function will scale the inputted width and height as
// as appropriate for the default monitor. The window is invisible until
// |Show| is called. Returns true if the window was created successfully.
bool Create(const std::wstring& title, const Point& origin, const Size& size);

// Show the current window. Returns true if the window was successfully shown.
bool Show();

// Release OS resources associated with window.
void Destroy();
Expand Down Expand Up @@ -86,6 +87,9 @@ class Win32Window {
// Retrieves a class instance pointer for |window|
static Win32Window* GetThisFromHandle(HWND const window) noexcept;

// Update the window frame's theme to match the system theme.
static void UpdateTheme(HWND const window);

bool quit_on_close_ = false;

// window handle for top level window.
Expand Down
1 change: 1 addition & 0 deletions background_isolate_channels/analysis_options.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
include: ../analysis_options.yaml
Loading