• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Duit-Foundation / flutter_duit / 21026233449

15 Jan 2026 09:26AM UTC coverage: 80.184% (-8.3%) from 88.441%
21026233449

push

github

web-flow
feat: Capability-based API migration pt2 (#323)

162 of 408 new or added lines in 23 files covered. (39.71%)

328 existing lines in 17 files now uncovered.

4354 of 5430 relevant lines covered (80.18%)

34.33 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

0.0
/lib/src/capabilities/native_module_impl.dart
1
import "package:duit_kernel/duit_kernel.dart";
2
import "package:flutter/services.dart";
3

4
final class DuitNativeModuleManager with NativeModuleCapabilityDelegate {
5
  late final UIDriver _driver;
6
  late final MethodChannel _driverChannel;
7

NEW
8
  @override
×
NEW
9
  void linkDriver(UIDriver driver) => _driver = driver;
×
10

NEW
11
  @override
×
12
  Future<void> initNativeModule() async {
NEW
13
    _driverChannel = const MethodChannel("duit:driver");
×
NEW
14
    _driverChannel.setMethodCallHandler((call) async {
×
NEW
15
      switch (call.method) {
×
NEW
16
        case "duit_event":
×
NEW
17
          await _driver.resolveEvent(
×
NEW
18
            _driver.buildContext,
×
NEW
19
            call.arguments as Map<String, dynamic>,
×
20
          );
21
          break;
NEW
22
        case "duit_layout":
×
NEW
23
          final json = call.arguments as Map<String, dynamic>;
×
NEW
24
          final view = await _driver.prepareLayout(json);
×
25
          if (view != null) {
NEW
26
            _driver.addUIDriverEvent(
×
NEW
27
              UIDriverViewEvent(view),
×
28
            );
29
          }
30
          break;
31
        default:
NEW
32
          _driver.logWarning("Unknown method: ${call.method}");
×
33
          break;
34
      }
35
    });
36
  }
37

NEW
38
  @override
×
39
  @preferInline
40
  Future<T?> invokeNativeMethod<T>(
41
    String method, [
42
    arguments,
43
  ]) async =>
NEW
44
      _driverChannel.invokeMethod<T>(method, arguments);
×
45

NEW
46
  @override
×
47
  void releaseResources() {
NEW
48
    _driverChannel.setMethodCallHandler(null);
×
49
  }
50
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc