-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/opt/lrc-client/js/js.js b/opt/lrc-client/js/js.js
index 4f9d933..8106962 100644
--- a/opt/lrc-client/js/js.js
+++ b/opt/lrc-client/js/js.js
@@ -1,3 +1,10 @@
+// Function to catch context menu and stop it ___________________________________
+window.oncontextmenu = function(event) {
+ event.preventDefault();
+ event.stopPropagation();
+ return false;
+};
+
// Function to convert music time to seconds ___________________________________
function seconds(time) {
var split = time.split(":");
@@ -282,6 +289,19 @@ $(function() {
});
});
+$(function() {
+ $(".combined-keyboard #hide, #Slideshow-canvas").click(function() {
+ $(".combined-keyboard").css("display","none");
+ });
+});
+
+$(function() {
+ $(".slideshow-controls .combined").click(function() {
+ $(".combined-keyboard").css("display","block");
+ $.get("http://" + navigator.host + ":" + port + "/lrc", {cmd: $(this).data("command").cmd});
+ });
+});
+
// Custom Commands _____________________________________________________________
$(function() {
// Existing commands are loaded in custom-commands.js
diff --git a/opt/lrc-client/js/touch.js b/opt/lrc-client/js/touch.js
index 2b822ba..894de45 100644
--- a/opt/lrc-client/js/touch.js
+++ b/opt/lrc-client/js/touch.js
@@ -3,20 +3,481 @@ var MOUSEUP_PREFIX = 'u';
var MOUSEDOWN_PREFIX = 'd';
var MOVE_PREFIX = 'm';
var SCROLL_PREFIX = 's';
+// Tableau de combinaison
+var buttonStatus = {};
var activeTouch, touchCount, scrolling, socket, startTime, touchHoldTime, touchHold;
function startup() {
- var el = $('#canvas')[0];
+ var el = $('#Touchpad-canvas')[0];
el.addEventListener('touchstart', handleTouchstart, false);
el.addEventListener('touchend', handleTouchend, false);
el.addEventListener('touchmove', handleTouchmove, false);
+ var al = $('#Slideshow-canvas')[0];
+ al.addEventListener('touchstart', handleTouchstart, false);
+ al.addEventListener('touchend', handleTouchend, false);
+ al.addEventListener('touchmove', handleTouchmove, false);
activeTouch = null;
touchHoldTime = 0;
touchHold = false;
touchCount = 0;
scrolling = false;
socket = null;
+
+ // Keyboard combined
+ $(function(){
+ //----------------SIMULATION MULTITOUCH----------------
+ // En fonction de la touche courante verifier les combinaisons possibles associées
+
+ // TOUCHE 'CTRL'
+ $(".combined-keyboard #ctrl").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.alt = false;
+ $(".combined-keyboard #alt").html("Alt");
+
+ if(buttonStatus.v == true){
+ $("#keypressed").html("You are pressing : v + ctrl");
+ command = "xdotool keydown ctrl key v";// ou xdotool key ctrl+v
+ }else if(buttonStatus.c == true){
+ $("#keypressed").html("You are pressing : c + ctrl");
+ command = "xdotool keydown ctrl key c";
+ }else if(buttonStatus.a == true){
+ $("#keypressed").html("You are pressing : a + ctrl");
+ command = "xdotool keydown ctrl key a";
+ }else if(buttonStatus.x == true){
+ $("#keypressed").html("You are pressing : x + ctrl");
+ command = "xdotool keydown ctrl key x";
+ }else if(buttonStatus.i == true){
+ $("#keypressed").html("You are pressing : i + ctrl");
+ command = "xdotool keydown ctrl key i";
+ }else if(buttonStatus.u == true){
+ $("#keypressed").html("You are pressing : u + ctrl");
+ command = "xdotool keydown ctrl key u";
+ }else if(buttonStatus.b == true){
+ $("#keypressed").html("You are pressing : b + ctrl");
+ command = "xdotool keydown ctrl key b";
+ }else{
+ $("#keypressed").html("You are pressing : ctrl");
+ }
+ buttonStatus.ctrl = true;
+ $(".combined-keyboard #ctrl").html( $(".combined-keyboard #ctrl").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #ctrl").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.ctrl = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #ctrl").html("Ctrl");
+ //$("#keypressed").html("");
+ });
+
+ // TOUCHE 'ALT'
+ $(".combined-keyboard #alt").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.ctrl = false;
+ $(".combined-keyboard #ctrl").html("Ctrl");
+
+ if(buttonStatus.v == true){
+ $("#keypressed").html("You are pressing : v + alt");
+ command = "xdotool keydown alt key v";
+ }else if(buttonStatus.c == true){
+ $("#keypressed").html("You are pressing : c + alt");
+ command = "xdotool keydown alt key c";
+ }else if(buttonStatus.a == true){
+ $("#keypressed").html("You are pressing : a + alt");
+ command = "xdotool keydown alt key a";
+ }else if(buttonStatus.x == true){
+ $("#keypressed").html("You are pressing : x + alt");
+ command = "xdotool keydown alt key x";
+ }else if(buttonStatus.i == true){
+ $("#keypressed").html("You are pressing : i + alt");
+ command = "xdotool keydown alt key i";
+ }else if(buttonStatus.u == true){
+ $("#keypressed").html("You are pressing : u + alt");
+ command = "xdotool keydown alt key u";
+ }else if(buttonStatus.b == true){
+ $("#keypressed").html("You are pressing : b + alt");
+ command = "xdotool keydown alt key b";
+ }else{
+ $("#keypressed").html("You are pressing : alt");
+ }
+ buttonStatus.alt = true;
+ $(".combined-keyboard #alt").html( $(".combined-keyboard #alt").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #alt").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.alt = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #alt").html("Alt");
+ //$("#keypressed").html("");
+ });
+
+ // TOUCHE 'V'
+ $(".combined-keyboard #v").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.c = false;
+ $(".combined-keyboard #c").html("C");
+ buttonStatus.b = false;
+ $(".combined-keyboard #b").html("B");
+ buttonStatus.u = false;
+ $(".combined-keyboard #u").html("U");
+ buttonStatus.i = false;
+ $(".combined-keyboard #i").html("I");
+ buttonStatus.x = false;
+ $(".combined-keyboard #x").html("X");
+ buttonStatus.a = false;
+ $(".combined-keyboard #a").html("A");
+
+ if(buttonStatus.ctrl == true){
+ $("#keypressed").html("You are pressing : ctrl + v");
+ command = "xdotool keydown ctrl key v";
+ }else if(buttonStatus.alt == true){
+ $("#keypressed").html("You are pressing : alt + v");
+ command = "xdotool keydown alt key v";
+ }else{
+ $("#keypressed").html("You are pressing : v");
+ }
+ buttonStatus.v = true;
+ $(".combined-keyboard #v").html( $(".combined-keyboard #v").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #v").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.v = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #v").html("V");
+ //$("#keypressed").html("");
+ });
+ // END 'V'
+
+ // TOUCHE 'C'
+ $(".combined-keyboard #c").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.v = false;
+ $(".combined-keyboard #v").html("V");
+ buttonStatus.b = false;
+ $(".combined-keyboard #b").html("B");
+ buttonStatus.u = false;
+ $(".combined-keyboard #u").html("U");
+ buttonStatus.i = false;
+ $(".combined-keyboard #i").html("I");
+ buttonStatus.x = false;
+ $(".combined-keyboard #x").html("X");
+ buttonStatus.a = false;
+ $(".combined-keyboard #a").html("A");
+
+ if(buttonStatus.ctrl == true){
+ $("#keypressed").html("You are pressing : ctrl + c");
+ command = "xdotool keydown ctrl key c";
+ }else if(buttonStatus.alt == true){
+ $("#keypressed").html("You are pressing : alt + c");
+ command = "xdotool keydown alt key c";
+ }else{
+ $("#keypressed").html("You are pressing : c");
+ }
+ buttonStatus.c = true;
+ $(".combined-keyboard #c").html( $(".combined-keyboard #c").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #c").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.c = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #c").html("C");
+ //$("#keypressed").html("");
+ });
+ // END 'C'
+
+ // TOUCHE 'A'
+ $(".combined-keyboard #a").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.c = false;
+ $(".combined-keyboard #c").html("C");
+ buttonStatus.b = false;
+ $(".combined-keyboard #b").html("B");
+ buttonStatus.u = false;
+ $(".combined-keyboard #u").html("U");
+ buttonStatus.i = false;
+ $(".combined-keyboard #i").html("I");
+ buttonStatus.x = false;
+ $(".combined-keyboard #x").html("X");
+ buttonStatus.v = false;
+ $(".combined-keyboard #v").html("V");
+
+ if(buttonStatus.ctrl == true){
+ $("#keypressed").html("You are pressing : ctrl + a");
+ command = "xdotool keydown ctrl key a";
+ }else if(buttonStatus.alt == true){
+ $("#keypressed").html("You are pressing : alt + a");
+ command = "xdotool keydown alt key a";
+ }else{
+ $("#keypressed").html("You are pressing : a");
+ }
+ buttonStatus.a = true;
+ $(".combined-keyboard #a").html( $(".combined-keyboard #a").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #a").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.a = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #a").html("A");
+ //$("#keypressed").html("");
+ });
+ // END 'A'
+
+ // TOUCHE 'X'
+ $(".combined-keyboard #x").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.c = false;
+ $(".combined-keyboard #c").html("C");
+ buttonStatus.b = false;
+ $(".combined-keyboard #b").html("B");
+ buttonStatus.u = false;
+ $(".combined-keyboard #u").html("U");
+ buttonStatus.i = false;
+ $(".combined-keyboard #i").html("I");
+ buttonStatus.a = false;
+ $(".combined-keyboard #a").html("A");
+ buttonStatus.v = false;
+ $(".combined-keyboard #v").html("V");
+
+ if(buttonStatus.ctrl == true){
+ $("#keypressed").html("You are pressing : ctrl + x");
+ command = "xdotool keydown ctrl key x";
+ }else if(buttonStatus.alt == true){
+ $("#keypressed").html("You are pressing : alt + x");
+ command = "xdotool keydown alt key x";
+ }else{
+ $("#keypressed").html("You are pressing : x");
+ }
+ buttonStatus.x = true;
+ $(".combined-keyboard #x").html( $(".combined-keyboard #x").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #x").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.x = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #x").html("X");
+ //$("#keypressed").html("");
+ });
+ // END 'X'
+
+ // TOUCHE 'I'
+ $(".combined-keyboard #i").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.c = false;
+ $(".combined-keyboard #c").html("C");
+ buttonStatus.b = false;
+ $(".combined-keyboard #b").html("B");
+ buttonStatus.u = false;
+ $(".combined-keyboard #u").html("U");
+ buttonStatus.a = false;
+ $(".combined-keyboard #a").html("A");
+ buttonStatus.x = false;
+ $(".combined-keyboard #x").html("X");
+ buttonStatus.v = false;
+ $(".combined-keyboard #v").html("V");
+
+ if(buttonStatus.ctrl == true){
+ $("#keypressed").html("You are pressing : ctrl + i");
+ command = "xdotool keydown ctrl key i";
+ }else if(buttonStatus.alt == true){
+ $("#keypressed").html("You are pressing : alt + i");
+ command = "xdotool keydown alt key i";
+ }else{
+ $("#keypressed").html("You are pressing : i");
+ }
+ buttonStatus.i = true;
+ $(".combined-keyboard #i").html( $(".combined-keyboard #i").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #i").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.i = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #i").html("I");
+ //$("#keypressed").html("");
+ });
+ // END 'I'
+
+ // TOUCHE 'U'
+ $(".combined-keyboard #u").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.c = false;
+ $(".combined-keyboard #c").html("C");
+ buttonStatus.b = false;
+ $(".combined-keyboard #b").html("B");
+ buttonStatus.a = false;
+ $(".combined-keyboard #a").html("A");
+ buttonStatus.i = false;
+ $(".combined-keyboard #i").html("I");
+ buttonStatus.x = false;
+ $(".combined-keyboard #x").html("X");
+ buttonStatus.v = false;
+ $(".combined-keyboard #v").html("V");
+
+ if(buttonStatus.ctrl == true){
+ $("#keypressed").html("You are pressing : ctrl + u");
+ command = "xdotool keydown ctrl key u";
+ }else if(buttonStatus.alt == true){
+ $("#keypressed").html("You are pressing : alt + u");
+ command = "xdotool keydown alt key u";
+ }else{
+ $("#keypressed").html("You are pressing : u");
+ }
+ buttonStatus.u = true;
+ $(".combined-keyboard #u").html( $(".combined-keyboard #u").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #u").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.u = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #u").html("U");
+ //$("#keypressed").html("");
+ });
+ // END 'U'
+
+ // TOUCHE 'B'
+ $(".combined-keyboard #b").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ //$(".combined-keyboard").css("background","#696969");
+ buttonStatus.c = false;
+ $(".combined-keyboard #c").html("C");
+ buttonStatus.a = false;
+ $(".combined-keyboard #a").html("A");
+ buttonStatus.u = false;
+ $(".combined-keyboard #u").html("U");
+ buttonStatus.i = false;
+ $(".combined-keyboard #i").html("I");
+ buttonStatus.x = false;
+ $(".combined-keyboard #x").html("X");
+ buttonStatus.v = false;
+ $(".combined-keyboard #v").html("V");
+
+ if(buttonStatus.ctrl == true){
+ $("#keypressed").html("You are pressing : ctrl + b");
+ command = "xdotool keydown ctrl key b";
+ }else if(buttonStatus.alt == true){
+ $("#keypressed").html("You are pressing : alt + b");
+ command = "xdotool keydown alt key b";
+ }else{
+ $("#keypressed").html("You are pressing : b");
+ }
+ buttonStatus.b = true;
+ $(".combined-keyboard #b").html( $(".combined-keyboard #b").html() + "
");
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ $(".combined-keyboard #b").on("touchend", function(e) { // A decommenter hors emulateur
+ //buttonStatus.b = false;
+ //$(".combined-keyboard").css("background","#808080");
+ //$(".combined-keyboard #b").html("B");
+ //$("#keypressed").html("");
+ });
+ // END 'B'
+
+ // RESET Status Array and combined keyboard locks
+ $(".combined-keyboard #hide").on("touchend", function(e) {
+ buttonStatus = {};
+ $("#keypressed").html("");
+
+ $(".combined-keyboard #ctrl").html("Ctrl");
+ $(".combined-keyboard #alt").html("Alt");
+ $(".combined-keyboard #v").html("V");
+ $(".combined-keyboard #c").html("C");
+ $(".combined-keyboard #b").html("B");
+ $(".combined-keyboard #u").html("U");
+ $(".combined-keyboard #i").html("I");
+ $(".combined-keyboard #x").html("X");
+ $(".combined-keyboard #a").html("A");
+ });
+ });
+
+ // Click+movingmouse
+ $(function(){
+ $("#mouseclick .left-click").on("touchstart", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ buttonStatus.leftclick = true;
+ $("#mouseclick .left-click").html("
");
+ command = "xdotool mousedown 1";
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });
+
+ /* A decommenter hors emulateur
+ $("#mouseclick .left-click").on("touchend", function(e) {
+ e.preventDefault();
+ var command = "";
+
+ buttonStatus.leftclick = false;
+ command = "xdotool mouseup 1";
+
+ $.get("http://" + navigator.host + ":" + port + "/lrc",
+ {cmd: command}
+ );
+ });*/
+ });
}
function handleTouchstart(evt) {
@@ -39,6 +500,11 @@ function handleTouchstart(evt) {
touchHold = true;
console.log("touchHold", touchHold)
}
+
+ if(buttonStatus.leftclick == true)
+ $("#Slideshow-canvas").html("Left click + start");
+ else
+ $("#Slideshow-canvas").html( " start " );
}
function handleTouchend(evt) {
@@ -55,9 +521,18 @@ function handleTouchend(evt) {
}
scrolling = touchCount != 0;
+ $("#Slideshow-canvas").html( "" );
+ $("#mouseclick .left-click").html("");
+ buttonStatus.leftclick = false; // a commenter hors emulateur
}
function handleTouchmove(evt) {
+
+ if(buttonStatus.leftclick == true)
+ $("#Slideshow-canvas").html("Left click + move");
+ else
+ $("#Slideshow-canvas").html( " move " );
+
var deltaX, deltaY;
var time = (+new Date()) - startTime;
if (!scrolling) {
diff --git a/opt/lrc-client/locales/fr-FR/translation.json b/opt/lrc-client/locales/fr-FR/translation.json
index 96a11ee..f021d73 100644
--- a/opt/lrc-client/locales/fr-FR/translation.json
+++ b/opt/lrc-client/locales/fr-FR/translation.json
@@ -20,11 +20,11 @@
"credits": "Crédits"
},
"server": {
- "p1": "Pour ajouter un serveur (l'ordinateur qui va être controllé), vous devez connaître l'adresse IP de cet ordinateur. Pour ce faire, entrez la commande suivante dans votre terminal.",
- "p2": "Maintenant que vous avez l'adresse IP de votre ordinateur, allez sur la page \"Ajouter un serveur\" depuis l'écran d'acceuil et entrez le nom du serveur (un nom de votre choix) ainsi que l'adresse IP de votre ordinateur puis cliquez sur le bouton \"Sauvegarder\". C'est tout."
+ "p1": "Pour ajouter un serveur (l'ordinateur qui va être contrôlé), vous devez connaître l'adresse IP de cet ordinateur. Pour ce faire, entrez la commande suivante dans votre terminal.",
+ "p2": "Maintenant que vous avez l'adresse IP de votre ordinateur, allez sur la page \"Ajouter un serveur\" depuis l'écran d'accueil et entrez le nom du serveur (un nom de votre choix) ainsi que l'adresse IP de votre ordinateur puis cliquez sur le bouton \"Sauvegarder\". C'est tout."
},
"install": {
- "p1": "Si vous avez l'application entre les mains, c'est que avez déjà, aupréalable, installé la version pour GNU/LINUX. Toutefois, si vous ne l'avez pas déjà fait, suivez les instructions suivantes.",
+ "p1": "Si vous avez l'application entre les mains, c'est que avez déjà, au préalable, installé la version pour GNU/LINUX. Toutefois, si vous ne l'avez pas déjà fait, suivez les instructions suivantes.",
"p2": "1. Télechargez le lrc sur votre GNU/Linux.",
"p3": "2. Installez le package .deb.",
"p4": "3. Déplacez le dossier /opt/lrc-client sur votre appareil mobile.",
@@ -41,7 +41,7 @@
"p2": "Vous pouvez créer une nouvelle issue sur
Github ou nous contacter par email:"
},
"feedback": {
- "p1": "Dites nous ce que vous pensez de cette application. Envoyez vos critiques, sugestions ou demandes, nous les écouterons avec un grand plasir."
+ "p1": "Dites nous ce que vous pensez de cette application. Envoyez vos critiques, suggestions ou demandes, nous les écouterons avec un grand plasir."
},
"about": {
"p1": "C'est un Logiciel Libre et un projet Open Source distribué sous license GNU GPL.",
@@ -68,7 +68,7 @@
"command": "Commande à exécuter"
},
"settings": {
- "language": "Langage",
+ "language": "Language",
"theme": "Thème",
"audio": "Lecteur audio",
"video": "Lecteur video",
diff --git a/opt/lrc-client/manifest.webapp b/opt/lrc-client/manifest.webapp
index ad240fb..73bbb6d 100644
--- a/opt/lrc-client/manifest.webapp
+++ b/opt/lrc-client/manifest.webapp
@@ -40,6 +40,13 @@
"name": "Raphael Agneli",
"url": "http://www.agneli.com/"
}
+ },
+ "fr": {
+ "description": "Un contrôle à distance complet pour GNU/Linux.",
+ "developer": {
+ "name": "Raphael Agneli",
+ "url": "http://www.agneli.com/"
+ }
}
},
"default_locale": "en",