Retirer les info bulles des widgets

Tags: #<Tag:0x00007f3857f42978>

Bonjour,

Je souhaiterais pouvoir désactiver l’affichage des info bulles de certains widgets.
Par exemple, lorsque le curseur se trouve sur le bouton « Lampes », jeedom affiche également « Lampes », en plus de façon décalée car j’ai triché un peu sur le CSS pour avoir un effet de zoom uniquement sur les boutons (et pas sur l’ensemble du widget) :

image

Sur un PC ce ne serait pas très gênant, mais sur une tablette ou un RPi, lorsqu’on déplace la souris en touchant l’écran, le curseur se retrouve en plein sur le bouton que l’on vient d’actionner.

Quelqu’un aurait-il une solution ?

Bonsoir,

Le widget core cmd.action.other.default.html n’affiche le tooltip que si tu attribues une icône à ta commande, pour le supprimer il faut modifier le widget core dans un widget code en supprimant cette partie :

if("#name#" != '#name_display#'){
      $('.cmd[data-cmd_uid=#uid#]:last .action').attr('title',"#name#")
    }

Merci pour cette réponse, @Spine ;

J’ai bien vu quelque chose qui ressemble à ça dans le code source de la page.
Mais, je crains de ne pas savoir faire … Je dois modifier un fichier de jeedom (cmd.action.other.default.html ?) en retirant ce bloc if ? Ou peut-on le faire de façon officielle , sans altérer jeedom ? (car sinon à chaque mise à jour de Jeedom je vais devoir refaire cette modif)

À moins qu’on puisse créer un widget personnalisé ? Mais je ne sais pas du tout comment faire :worried:

Non il ne faut pas modifier le code du core sinon tu perdras la modif. à chaque MAJ comme tu dis. Il faut créer un nouveau widget code dans l’outil de création de widget et coller le code modifié dedans, puis l’appliquer sur tes commandes, regardes ici à la fin du premier post, tu as la procédure détaillée pour créer un widget code :


Dans ton cas il faut créer un widget Action/Défaut.

Édit : c’est plus clair? Tu as besoin du code complet?

Bonjour @Spine ,

Merci , disons que c’est moins sombre :grin:.
En fait, je ne connaissais pas du tout Jeedom il y a encore 3 mois. Je découvre donc, je viens de voir un tutoriel (celui-ci : https://www.youtube.com/watch?v=tx-3OPeUNUg) partiellement mais je reprendrai plus tard. Je me rends compte que Jeedom peut être personnalisé drastiquement.

Pour en revenir à mon cas, si je comprends bien je dois me procurer la source du widget core que je vais trouver dans /core/template/dashboard/cmd.action.other.default.html , d’enlever le bloc if que tu m’as indiqué et de m’en servir comme widget personnalisé ?

Où dois-je mettre ce nouveau fichier afin qu’il ne soit pas écrasé par les prochaines maj ? Y a-t-il un endroit dédié ? Et comment le lier au widget personnalisé ? (ce sont des questions que je me pose mais je trouverai surement réponse dans les tutos).

Bon week end !

Bonjour,

Ah oui effectivement on part de loin, mais il faut bien commencer. Les vidéos de @Domotech sont très bien pour débuter, prends le temps de les regarder et tester.
Les widgets code ce n’est peut-être pas l’idéal pour commencer mais puisque que c’est le sujet je vais essayer de faire simple.
Donc tu vas dans le menu « Outils » puis « Widgets » et ensuite tu cliques sur :
Annotation 2020-05-16 153044
Ensuite tu cliques sur « Nouveau » en haut à droite et tu crées un nouveau widget code avec cette configuration (peu importe le nom) :
Annotation 2020-05-16 153556
Dans la fenêtre d’édition qui apparait tu colles ce code :

<div class="cmd cmd-widget reportModeHidden" data-type="action" data-subtype="other" data-template="default" data-cmd_id="#id#" data-cmd_uid="#uid#" data-version="#version#" data-eqLogic_id="#eqLogic_id#">
  <div class="content-xs">
    <a class="btn btn-sm btn-default action tooltips">#name_display#</a>
  </div>
  <script>
    $('.cmd[data-cmd_uid=#uid#]:last .action').off('click').on('click', function () {
      jeedom.cmd.execute({id: '#id#'});
    });
    if ($('.cmd[data-cmd_uid=#uid#]').last().prev().data('subtype') != undefined && $('.cmd[data-cmd_id=#id#]').last().prev().data('subtype') != 'other'
    && $('.cmd[data-cmd_uid=#uid#]').last().prev().css('display') != 'block') {
      $('.cmd[data-cmd_uid=#uid#]').last().prepend('<br/>');
    }
  </script>
</div>

Tu sauvegardes et ton nouveau widget est créé. Ces widgets « code » sont des widgets perso. qui ne sont pas écrasés par les MAJ. Ensuite il faut appliquer ce widget sur chacune des commandes où tu ne souhaites pas d’info. bulles, c’est expliqué dans la vidéo comment appliquer un widget sur une commande, si tu ne t’es pas trompé, ton nouveau widget devrait apparaître dans la liste.
Voilà, c’était pour aller au bout de la solution mais prends le temps de te familiariser avec Jeedom et les widgets « Core », car là c’est déjà une étape au dessus.

Bon courage. :wink:

2 J'aimes

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.