Files
sdk/runtime/embedders/openglui/common/input_handler.cc
T
gram@google.com 9703d7bfdd Refactored OpenGL embedder that works on Android, Mac or Linux.
To build on/for linux: tools/build.py -a x64 samples
To build on/for Mac: tools/build.py -a ia32 samples
To build on Linux for Android: tools/bui8ld.py --os=android samples

Note that to run on a Mac, you need to delete the first line of the
fragment shader in raytrace.dart, that says:

  precision mediump float;
Review URL: https://codereview.chromium.org//11883013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@17161 260f80e4-7a28-3924-810f-c04153c831b5
2013-01-16 21:17:52 +00:00

69 lines
1.8 KiB
C++

// Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.
#include "embedders/openglui/common/input_handler.h"
#include "embedders/openglui/common/log.h"
InputHandler::InputHandler(VMGlue* vm_glue)
: vm_glue_(vm_glue) {
}
int InputHandler::OnMotionEvent(MotionEvent event,
int64_t when,
float x,
float y) {
const char *function = NULL;
switch (event) {
case kMotionDown:
function = "onMotionDown";
break;
case kMotionUp:
function = "onMotionUp";
break;
case kMotionMove:
function = "onMotionMove";
break;
case kMotionCancel:
function = "onMotionCancel";
break;
case kMotionOutside:
function = "onMotionOutside";
break;
case kMotionPointerDown:
function = "onMotionPointerDown";
break;
case kMotionPointerUp:
function = "onMotionPointerUp";
break;
default:
return -1;
}
return vm_glue_->OnMotionEvent(function, when, x, y);
}
int InputHandler::OnKeyEvent(KeyEvent event,
int64_t when,
int32_t flags,
int32_t key_code,
int32_t meta_state,
int32_t repeat) {
const char *function = NULL;
switch (event) {
case kKeyDown:
function = "onKeyDown";
break;
case kKeyUp:
function = "onKeyUp";
break;
case kKeyMultiple:
function = "onKeyMultiple";
break;
default:
return -1;
}
return vm_glue_->OnKeyEvent(function, when, flags, key_code,
meta_state, repeat);
}