mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Dart actually expects package: to work. This CL makes package:foo map to /packages/foo, similar to how Dartium or bin/dart would expect. This also means overlaying the /gen directory over the actual package outputs (as consumers of an SDK would expect) as well as adding an additional /lib indirection for the actual package source as the Dart pub tool will expect. This is far from perfect, but it unlocks us actually producing a sky SDK. I expect there may be some fallout from this change as I'm sure I missed some package: uses. We also don't have a general solution for all /foo/bar/baz includes which randomly included parts of mojo's source directory. Those will need to be updated to use a package: and deploy_sdk.py taught how to build a package for them. R=abarth@chromium.org Review URL: https://codereview.chromium.org/990493002
42 lines
1.0 KiB
Plaintext
42 lines
1.0 KiB
Plaintext
<script>
|
|
import 'dart:sky';
|
|
import 'package:sky/framework/shell.dart' as shell;
|
|
import 'package:sky/services/sensors/sensors.mojom.dart';
|
|
|
|
// TODO(abarth): We should factor this out into a kinematics library.
|
|
class _ShakeDetector extends SensorListener {
|
|
_ShakeDetector() {
|
|
SensorServiceProxy sensorService = new SensorServiceProxy.unbound();
|
|
shell.requestService(sensorService);
|
|
|
|
_stub = new SensorListenerStub.unbound()..impl = this;
|
|
sensorService.ptr.addListener(SensorType_ACCELEROMETER, _stub);
|
|
}
|
|
|
|
void onAccuracyChanged(int accuracy) {
|
|
}
|
|
|
|
void onSensorChanged(SensorData data) {
|
|
double value = data.values[0] + data.values[1] + data.values[2];
|
|
if (isShaking && value < 15.0)
|
|
didCompleteShake();
|
|
else if (value > 40.0)
|
|
isShaking = true;
|
|
}
|
|
|
|
void didCompleteShake() {
|
|
window.location.assign(document.URL);
|
|
_stub.close();
|
|
}
|
|
|
|
bool isShaking = false;
|
|
SensorListenerStub _stub;
|
|
}
|
|
|
|
_ShakeDetector _detector;
|
|
|
|
void _init(_) {
|
|
_detector = new _ShakeDetector();
|
|
}
|
|
</script>
|