X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;ds=sidebyside;f=cinelerra-5.1%2Fcinelerra%2Fandroidcontrol.C;h=89a9aca5a70e283f3a0930d4b08d04edfafbcecb;hb=fdf615e4b9eb6ce8faecc7f138c28edf0efac3be;hp=0417ceb45ddb7b76856c9727b835ebb004df358c;hpb=7fd85fb66168f6b518c5f2d73e04036e87faa0e1;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/androidcontrol.C b/cinelerra-5.1/cinelerra/androidcontrol.C index 0417ceb4..89a9aca5 100644 --- a/cinelerra-5.1/cinelerra/androidcontrol.C +++ b/cinelerra-5.1/cinelerra/androidcontrol.C @@ -1,3 +1,22 @@ +/* + * CINELERRA + * Copyright (C) 2016-2020 William Morrow + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published + * by the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ #include "keys.h" #include "mwindow.h" @@ -47,6 +66,9 @@ AndroidControl::AndroidControl(MWindowGUI *mwindow_gui) { this->mwindow_gui = mwindow_gui; Thread::start(); + done = -1; + sockfd = -1; + msg = 0; } bool AndroidControl::is_msg(const char *cp) @@ -59,6 +81,8 @@ bool AndroidControl::is_msg(const char *cp) void AndroidControl::press(int key) { // printf("press 0x%04x\n",key); + if( key == KPMENU && mwindow_gui->keyev_grab_remote() ) + printf("android grab remote\n"); if( mwindow_gui->key_listener(key) ) return; mwindow_gui->remote_control->remote_key(key); } @@ -96,19 +120,7 @@ void AndroidControl::run() if( !len || !msg_len || *pin != *msg ) continue; ++msg; --msg_len; if( msg_len <= 0 ) continue; - if( is_msg("stop") ) press(KPSTOP); - else if( is_msg("play") ) press(KPPLAY); - else if( is_msg("rplay") ) press(KPREV); - else if( is_msg("pause") ) press(' '); - else if( is_msg("fast_lt") ) press(KPBACK); - else if( is_msg("media_up") ) press(UP); - else if( is_msg("fast_rt") ) press(KPFWRD); - else if( is_msg("menu") ) press(KPMENU); - else if( is_msg("media_lt") ) press(LEFT); - else if( is_msg("media_rt") ) press(RIGHT); - else if( is_msg("slow_lt") ) press(KPRECD); - else if( is_msg("media_dn") ) press(DOWN); - else if( is_msg("slow_rt") ) press(KPAUSE); + if( is_msg("menu") ) press(KPMENU); else if( is_msg("key 0") ) press('0'); else if( is_msg("key 1") ) press('1'); else if( is_msg("key 2") ) press('2'); @@ -124,9 +136,31 @@ void AndroidControl::run() else if( is_msg("key C") ) press('c'); else if( is_msg("key D") ) press('d'); else if( is_msg("key E") ) press('e'); - else if( is_msg("key F") ) press('f'); + else if( is_msg("book") ) press(KPBOOK); + else if( is_msg("rplay") ) press(KPREV); + else if( is_msg("stop") ) press(KPSTOP); + else if( is_msg("play") ) press(KPPLAY); + else if( is_msg("media_lt") ) press(LEFT); + else if( is_msg("media_rt") ) press(RIGHT); + else if( is_msg("media_up") ) press(UP); + else if( is_msg("media_dn") ) press(DOWN); + else if( is_msg("pause") ) press(' '); + else if( is_msg("slow_lt") ) press(KPRECD); + else if( is_msg("slow_rt") ) press(KPAUSE); + else if( is_msg("fast_lt") ) press(KPBACK); + else if( is_msg("fast_rt") ) press(KPFWRD); + else if( is_msg("fscrn") ) press(KPFSCRN); + else if( is_msg("mute") ) press(KPMUTE); + else if( is_msg("vol_up") ) press(KPVOLUP); + else if( is_msg("vol_dn") ) press(KPVOLDN); + else if( is_msg("ch_up") ) press(KPCHUP); + else if( is_msg("ch_dn") ) press(KPCHDN); + else if( is_msg("key dot") ) press('.'); + else if( is_msg("key cc") ) press(KPCC); + else if( is_msg("key tv") ) press(KPTV); + else if( is_msg("hand") ) press(KPHAND); else if( is_msg("suspend") ) { - system("sync; sleep 1; pm-suspend"); + system("sync; sleep 1; acpitool -s"); } else if( is_msg("power") ) { system("sync; sleep 1; poweroff");