Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit3881f0e

Browse files
committed
Expose assets path to plugins.
1 parent88ba721 commit3881f0e

File tree

2 files changed

+15
-13
lines changed

2 files changed

+15
-13
lines changed

‎flutter-engine/src/lib.rs

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ use parking_lot::RwLock;
2525
use std::ffi::CString;
2626
use std::future::Future;
2727
use std::os::raw::{c_char, c_void};
28-
use std::path::Path;
28+
use std::path::{Path,PathBuf};
2929
use std::sync::atomic::{AtomicPtr,Ordering};
3030
use std::sync::mpsc::{self,Receiver,Sender};
3131
use std::sync::{Arc,Weak};
@@ -51,6 +51,7 @@ struct FlutterEngineInner {
5151
platform_receiver:Receiver<MainThreadCallback>,
5252
platform_sender:Sender<MainThreadCallback>,
5353
texture_registry:TextureRegistry,
54+
assets:PathBuf,
5455
}
5556

5657
pubstructFlutterEngineWeakRef{
@@ -131,7 +132,7 @@ impl TaskRunnerHandler for PlatformRunnerHandler {
131132
}
132133

133134
implFlutterEngine{
134-
pubfnnew(handler:Weak<dynFlutterEngineHandler>) ->Self{
135+
pubfnnew(handler:Weak<dynFlutterEngineHandler>,assets:PathBuf) ->Self{
135136
let platform_handler =Arc::new(PlatformRunnerHandler{
136137
handler: handler.clone(),
137138
});
@@ -150,6 +151,7 @@ impl FlutterEngine {
150151
platform_receiver: main_rx,
151152
platform_sender: main_tx,
152153
texture_registry:Default::default(),
154+
assets,
153155
}),
154156
};
155157

@@ -225,7 +227,11 @@ impl FlutterEngine {
225227
}
226228
}
227229

228-
pubfnrun(&self,assets_path:&Path,arguments:&[String]) ->Result<(),RunError>{
230+
pubfnassets(&self) ->&Path{
231+
&self.inner.assets
232+
}
233+
234+
pubfnrun(&self,arguments:&[String]) ->Result<(),RunError>{
229235
if !self.is_platform_thread(){
230236
returnErr(RunError::NotPlatformThread);
231237
}
@@ -287,7 +293,7 @@ impl FlutterEngine {
287293

288294
let project_args = flutter_engine_sys::FlutterProjectArgs{
289295
struct_size: std::mem::size_of::<flutter_engine_sys::FlutterProjectArgs>(),
290-
assets_path:path_to_cstring(assets_path).into_raw(),
296+
assets_path:path_to_cstring(self.assets()).into_raw(),
291297
main_path__unused__: std::ptr::null(),
292298
packages_path__unused__: std::ptr::null(),
293299
icu_data_path: std::ptr::null(),

‎flutter-winit/src/window.rs

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ use glutin::window::WindowBuilder;
2525
use glutin::ContextBuilder;
2626
use parking_lot::Mutex;
2727
use std::error::Error;
28-
use std::path::Path;
28+
use std::path::PathBuf;
2929
use std::sync::atomic::{AtomicBool,Ordering};
3030
use std::sync::Arc;
3131

@@ -44,7 +44,7 @@ pub struct FlutterWindow {
4444
}
4545

4646
implFlutterWindow{
47-
pubfnnew(window:WindowBuilder) ->Result<Self,Box<dynError>>{
47+
pubfnnew(window:WindowBuilder,assets_path:PathBuf) ->Result<Self,Box<dynError>>{
4848
let event_loop =EventLoop::with_user_event();
4949
let proxy = event_loop.create_proxy();
5050

@@ -57,7 +57,7 @@ impl FlutterWindow {
5757
context.clone(),
5858
resource_context.clone(),
5959
));
60-
let engine =FlutterEngine::new(Arc::downgrade(&engine_handler)as_);
60+
let engine =FlutterEngine::new(Arc::downgrade(&engine_handler)as_, assets_path);
6161

6262
let proxy = event_loop.create_proxy();
6363
let isolate_cb =move ||{
@@ -163,12 +163,8 @@ impl FlutterWindow {
163163
self.engine.with_channel(channel_name, f)
164164
}
165165

166-
pubfnstart_engine(
167-
&self,
168-
assets_path:&Path,
169-
arguments:&[String],
170-
) ->Result<(),Box<dynError>>{
171-
self.engine.run(assets_path, arguments)?;
166+
pubfnstart_engine(&self,arguments:&[String]) ->Result<(),Box<dynError>>{
167+
self.engine.run(arguments)?;
172168
Ok(())
173169
}
174170

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp