aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Modules/Tango.PPC.Browser/BoundsObjects/KeyboardHandler.cs
blob: 3c608a5189deae9d17ae868792ea68a613f35285 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using Tango.PPC.Browser.Attributes;
using Tango.PPC.Browser.Views;
using Tango.PPC.Common.Helpers;
using Tango.Touch.Keyboard;

namespace Tango.PPC.Browser.BoundsObjects
{
    [BoundObject("keyboard", "keyboard.js")]
    public class KeyboardHandler
    {
        private DateTime _lastTime;

        public KeyboardHandler()
        {
            _lastTime = DateTime.Now;
        }

        public void openKeyboard(String inputType)
        {
            if (DateTime.Now > _lastTime.AddMilliseconds(1000))
            {
                _lastTime = DateTime.Now;

                Application.Current.Dispatcher.BeginInvoke(new Action(async () =>
                {
                    switch (inputType)
                    {
                        case "search":
                            KeyboardHelper.OpenKeyboard(KeyboardActionKeyMode.Go);
                            break;
                        default:
                            KeyboardHelper.OpenKeyboard(KeyboardActionKeyMode.Next);
                            break;
                    }


                    await Task.Delay(50);
                    BrowserView.Instance.btnGo.Focus();
                    await Task.Delay(50);
                    BrowserView.Instance.Browser.Focus();
                    Debug.WriteLine("Focus");
                }));
            }
        }

        public void closeKeyboard()
        {
            if (DateTime.Now > _lastTime.AddMilliseconds(1000))
            {
                _lastTime = DateTime.Now;

                Application.Current.Dispatcher.BeginInvoke(new Action(() =>
                {
                    KeyboardHelper.CloseKeyboard();
                }));
            }
        }
    }
}
class="w"> <algorithm> #include <google/protobuf/stubs/common.h> #include <google/protobuf/stubs/port.h> #include <google/protobuf/stubs/once.h> #include <google/protobuf/io/coded_stream.h> #include <google/protobuf/wire_format_lite_inl.h> #include <google/protobuf/descriptor.h> #include <google/protobuf/generated_message_reflection.h> #include <google/protobuf/reflection_ops.h> #include <google/protobuf/wire_format.h> // @@protoc_insertion_point(includes) namespace Tango { namespace PMR { namespace Diagnostics { class DispenserJoggingResponseDefaultTypeInternal { public: ::google::protobuf::internal::ExplicitlyConstructed<DispenserJoggingResponse> _instance; } _DispenserJoggingResponse_default_instance_; namespace protobuf_DispenserJoggingResponse_2eproto { namespace { ::google::protobuf::Metadata file_level_metadata[1]; } // namespace PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::ParseTableField const TableStruct::entries[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = { {0, 0, 0, ::google::protobuf::internal::kInvalidMask, 0, 0}, }; PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::AuxillaryParseTableField const TableStruct::aux[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = { ::google::protobuf::internal::AuxillaryParseTableField(), }; PROTOBUF_CONSTEXPR_VAR ::google::protobuf::internal::ParseTable const TableStruct::schema[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = { { NULL, NULL, 0, -1, -1, -1, -1, NULL, false }, }; const ::google::protobuf::uint32 TableStruct::offsets[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = { ~0u, // no _has_bits_ GOOGLE_PROTOBUF_GENERATED_MESSAGE_FIELD_OFFSET(DispenserJoggingResponse, _internal_metadata_), ~0u, // no _extensions_ ~0u, // no _oneof_case_ ~0u, // no _weak_field_map_ }; static const ::google::protobuf::internal::MigrationSchema schemas[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = { { 0, -1, sizeof(DispenserJoggingResponse)}, }; static ::google::protobuf::Message const * const file_default_instances[] = { reinterpret_cast<const ::google::protobuf::Message*>(&_DispenserJoggingResponse_default_instance_), }; namespace { void protobuf_AssignDescriptors() { AddDescriptors(); ::google::protobuf::MessageFactory* factory = NULL; AssignDescriptors( "DispenserJoggingResponse.proto", schemas, file_default_instances, TableStruct::offsets, factory, file_level_metadata, NULL, NULL); } void protobuf_AssignDescriptorsOnce() { static GOOGLE_PROTOBUF_DECLARE_ONCE(once); ::google::protobuf::GoogleOnceInit(&once, &protobuf_AssignDescriptors); } void protobuf_RegisterTypes(const ::std::string&) GOOGLE_ATTRIBUTE_COLD; void protobuf_RegisterTypes(const ::std::string&) { protobuf_AssignDescriptorsOnce(); ::google::protobuf::internal::RegisterAllTypes(file_level_metadata, 1); } } // namespace void TableStruct::InitDefaultsImpl() { GOOGLE_PROTOBUF_VERIFY_VERSION; ::google::protobuf::internal::InitProtobufDefaults(); _DispenserJoggingResponse_default_instance_._instance.DefaultConstruct(); ::google::protobuf::internal::OnShutdownDestroyMessage( &_DispenserJoggingResponse_default_instance_);} void InitDefaults() { static GOOGLE_PROTOBUF_DECLARE_ONCE(once); ::google::protobuf::GoogleOnceInit(&once, &TableStruct::InitDefaultsImpl); } namespace { void AddDescriptorsImpl() { InitDefaults(); static const char descriptor[] GOOGLE_ATTRIBUTE_SECTION_VARIABLE(protodesc_cold) = { "\n\036DispenserJoggingResponse.proto\022\025Tango." "PMR.Diagnostics\"\032\n\030DispenserJoggingRespo" "nseB!\n\037com.twine.tango.pmr.diagnosticsb\006" "proto3" }; ::google::protobuf::DescriptorPool::InternalAddGeneratedFile( descriptor, 126); ::google::protobuf::MessageFactory::InternalRegisterGeneratedFile( "DispenserJoggingResponse.proto", &protobuf_RegisterTypes); } } // anonymous namespace void AddDescriptors() { static GOOGLE_PROTOBUF_DECLARE_ONCE(once); ::google::protobuf::GoogleOnceInit(&once, &AddDescriptorsImpl); } // Force AddDescriptors() to be called at dynamic initialization time. struct StaticDescriptorInitializer { StaticDescriptorInitializer() { AddDescriptors(); } } static_descriptor_initializer; } // namespace protobuf_DispenserJoggingResponse_2eproto // =================================================================== #if !defined(_MSC_VER) || _MSC_VER >= 1900 #endif // !defined(_MSC_VER) || _MSC_VER >= 1900 DispenserJoggingResponse::DispenserJoggingResponse() : ::google::protobuf::Message(), _internal_metadata_(NULL) { if (GOOGLE_PREDICT_TRUE(this != internal_default_instance())) { protobuf_DispenserJoggingResponse_2eproto::InitDefaults(); } SharedCtor(); // @@protoc_insertion_point(constructor:Tango.PMR.Diagnostics.DispenserJoggingResponse) } DispenserJoggingResponse::DispenserJoggingResponse(const DispenserJoggingResponse& from) : ::google::protobuf::Message(), _internal_metadata_(NULL), _cached_size_(0) { _internal_metadata_.MergeFrom(from._internal_metadata_); // @@protoc_insertion_point(copy_constructor:Tango.PMR.Diagnostics.DispenserJoggingResponse) } void DispenserJoggingResponse::SharedCtor() { _cached_size_ = 0; } DispenserJoggingResponse::~DispenserJoggingResponse() { // @@protoc_insertion_point(destructor:Tango.PMR.Diagnostics.DispenserJoggingResponse) SharedDtor(); } void DispenserJoggingResponse::SharedDtor() { } void DispenserJoggingResponse::SetCachedSize(int size) const { GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); _cached_size_ = size; GOOGLE_SAFE_CONCURRENT_WRITES_END(); } const ::google::protobuf::Descriptor* DispenserJoggingResponse::descriptor() { protobuf_DispenserJoggingResponse_2eproto::protobuf_AssignDescriptorsOnce(); return protobuf_DispenserJoggingResponse_2eproto::file_level_metadata[kIndexInFileMessages].descriptor; } const DispenserJoggingResponse& DispenserJoggingResponse::default_instance() { protobuf_DispenserJoggingResponse_2eproto::InitDefaults(); return *internal_default_instance(); } DispenserJoggingResponse* DispenserJoggingResponse::New(::google::protobuf::Arena* arena) const { DispenserJoggingResponse* n = new DispenserJoggingResponse; if (arena != NULL) { arena->Own(n); } return n; } void DispenserJoggingResponse::Clear() { // @@protoc_insertion_point(message_clear_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) ::google::protobuf::uint32 cached_has_bits = 0; // Prevent compiler warnings about cached_has_bits being unused (void) cached_has_bits; _internal_metadata_.Clear(); } bool DispenserJoggingResponse::MergePartialFromCodedStream( ::google::protobuf::io::CodedInputStream* input) { #define DO_(EXPRESSION) if (!GOOGLE_PREDICT_TRUE(EXPRESSION)) goto failure ::google::protobuf::uint32 tag; // @@protoc_insertion_point(parse_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) for (;;) { ::std::pair< ::google::protobuf::uint32, bool> p = input->ReadTagWithCutoffNoLastTag(127u); tag = p.first; if (!p.second) goto handle_unusual; handle_unusual: if (tag == 0) { goto success; } DO_(::google::protobuf::internal::WireFormat::SkipField( input, tag, _internal_metadata_.mutable_unknown_fields())); } success: // @@protoc_insertion_point(parse_success:Tango.PMR.Diagnostics.DispenserJoggingResponse) return true; failure: // @@protoc_insertion_point(parse_failure:Tango.PMR.Diagnostics.DispenserJoggingResponse) return false; #undef DO_ } void DispenserJoggingResponse::SerializeWithCachedSizes( ::google::protobuf::io::CodedOutputStream* output) const { // @@protoc_insertion_point(serialize_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; if ((_internal_metadata_.have_unknown_fields() && ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) { ::google::protobuf::internal::WireFormat::SerializeUnknownFields( (::google::protobuf::internal::GetProto3PreserveUnknownsDefault() ? _internal_metadata_.unknown_fields() : _internal_metadata_.default_instance()), output); } // @@protoc_insertion_point(serialize_end:Tango.PMR.Diagnostics.DispenserJoggingResponse) } ::google::protobuf::uint8* DispenserJoggingResponse::InternalSerializeWithCachedSizesToArray( bool deterministic, ::google::protobuf::uint8* target) const { (void)deterministic; // Unused // @@protoc_insertion_point(serialize_to_array_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; if ((_internal_metadata_.have_unknown_fields() && ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) { target = ::google::protobuf::internal::WireFormat::SerializeUnknownFieldsToArray( (::google::protobuf::internal::GetProto3PreserveUnknownsDefault() ? _internal_metadata_.unknown_fields() : _internal_metadata_.default_instance()), target); } // @@protoc_insertion_point(serialize_to_array_end:Tango.PMR.Diagnostics.DispenserJoggingResponse) return target; } size_t DispenserJoggingResponse::ByteSizeLong() const { // @@protoc_insertion_point(message_byte_size_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) size_t total_size = 0; if ((_internal_metadata_.have_unknown_fields() && ::google::protobuf::internal::GetProto3PreserveUnknownsDefault())) { total_size += ::google::protobuf::internal::WireFormat::ComputeUnknownFieldsSize( (::google::protobuf::internal::GetProto3PreserveUnknownsDefault() ? _internal_metadata_.unknown_fields() : _internal_metadata_.default_instance())); } int cached_size = ::google::protobuf::internal::ToCachedSize(total_size); GOOGLE_SAFE_CONCURRENT_WRITES_BEGIN(); _cached_size_ = cached_size; GOOGLE_SAFE_CONCURRENT_WRITES_END(); return total_size; } void DispenserJoggingResponse::MergeFrom(const ::google::protobuf::Message& from) { // @@protoc_insertion_point(generalized_merge_from_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) GOOGLE_DCHECK_NE(&from, this); const DispenserJoggingResponse* source = ::google::protobuf::internal::DynamicCastToGenerated<const DispenserJoggingResponse>( &from); if (source == NULL) { // @@protoc_insertion_point(generalized_merge_from_cast_fail:Tango.PMR.Diagnostics.DispenserJoggingResponse) ::google::protobuf::internal::ReflectionOps::Merge(from, this); } else { // @@protoc_insertion_point(generalized_merge_from_cast_success:Tango.PMR.Diagnostics.DispenserJoggingResponse) MergeFrom(*source); } } void DispenserJoggingResponse::MergeFrom(const DispenserJoggingResponse& from) { // @@protoc_insertion_point(class_specific_merge_from_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) GOOGLE_DCHECK_NE(&from, this); _internal_metadata_.MergeFrom(from._internal_metadata_); ::google::protobuf::uint32 cached_has_bits = 0; (void) cached_has_bits; } void DispenserJoggingResponse::CopyFrom(const ::google::protobuf::Message& from) { // @@protoc_insertion_point(generalized_copy_from_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) if (&from == this) return; Clear(); MergeFrom(from); } void DispenserJoggingResponse::CopyFrom(const DispenserJoggingResponse& from) { // @@protoc_insertion_point(class_specific_copy_from_start:Tango.PMR.Diagnostics.DispenserJoggingResponse) if (&from == this) return; Clear(); MergeFrom(from); } bool DispenserJoggingResponse::IsInitialized() const { return true; } void DispenserJoggingResponse::Swap(DispenserJoggingResponse* other) { if (other == this) return; InternalSwap(other); } void DispenserJoggingResponse::InternalSwap(DispenserJoggingResponse* other) { using std::swap; _internal_metadata_.Swap(&other->_internal_metadata_); swap(_cached_size_, other->_cached_size_); } ::google::protobuf::Metadata DispenserJoggingResponse::GetMetadata() const { protobuf_DispenserJoggingResponse_2eproto::protobuf_AssignDescriptorsOnce(); return protobuf_DispenserJoggingResponse_2eproto::file_level_metadata[kIndexInFileMessages]; } #if PROTOBUF_INLINE_NOT_IN_HEADERS // DispenserJoggingResponse #endif // PROTOBUF_INLINE_NOT_IN_HEADERS // @@protoc_insertion_point(namespace_scope) } // namespace Diagnostics } // namespace PMR } // namespace Tango // @@protoc_insertion_point(global_scope)