Home Forums Wiki Doc Install Extras Screenshots Source Code Projects Blog Users Groups Register
Glx-Dock / Cairo-Dock List of forums Problems at use | Problèmes à l'utilisation Corruption des icônes
The latest stable release is the *3.4.0* : How to install it here.
Note: We just switched from BZR to Git on Github! (only to host the code and your future pull requests)
Problems at use | Problèmes à l'utilisation

Subjects Author Language Messages Last message
[Locked] Corruption des icônes
Page : 1 2
petaramesh Français 25 fabounet [Read]
14 February 2013 à 23:36

petaramesh, Friday 04 January 2013 à 17:26


Subscription date : 04 January 2013
Messages : 39
Re,

Sur Ubuntu 12.10 Quantal AMD64 avec noyau 3.5.0-21, pilotes NVidia et (PPA) Cairo-dock 3.1.2-0ubuntu0~quantal utilisé en mode OpenGL :

- Les icônes du dock Cairo (bas ET haut) sont occasionnellement corrompues, individuellement (quelques-unes sur le dock), en totalité ou partiellement (apparition d'un rectangle de pointillés de couleurs aléatoires).

- Ceci n'a pas d'autre incidence apparente que la corruption visuelle de l'icône.

- Reconfigurer le plug-in concerné "répare" l'icône.

Ceci survient "de temps à autre", mais assez fréquemment...

matttbe, Saturday 05 January 2013 à 01:58


Subscription date : 24 January 2009
Messages : 12573
Merci pour ce rapport de bug.

Est-ce que ce problème survient après un événement précis? ex: retour de mise en veille/hibernation, mise à jour des drivers nvidia, ouverture d'une application, animation de Compiz, autre?

Pourrais-tu éventuellement tester (temporairement ou non) la version de développement en ajoutant le ppa Weekly?

petaramesh, Saturday 05 January 2013 à 10:31


Subscription date : 04 January 2013
Messages : 39
matttbe :
Est-ce que ce problème survient après un événement précis? ex: retour de mise en veille/hibernation, mise à jour des drivers nvidia, ouverture d'une application, animation de Compiz, autre?


Pas noté d'évènement précis, ça survient plutôt "comme ça", quoi que ce matin au retour de veille, j'ai 2 icônes "disparues" de plus dans le dock. J'ai une copie d'écran, mais je ne sais pas comment la joindre sur ce forum...

matttbe :
Pourrais-tu éventuellement tester (temporairement ou non) la version de développement en ajoutant le ppa Weekly?


Je peux essayer d'essayer, mais probablement pas ce WE où j'aurai peu de temps pour geeker

Merci pour ta réponse

matttbe, Saturday 05 January 2013 à 18:12


Subscription date : 24 January 2009
Messages : 12573
Serait-ce peut-être lié à ce bug? => http://www.nvnews.net/vbulletin/showthread.php?t=153132
Je n'ai plus de nvidia, je ne peux pas confirmer mais si ce bug est toujours présent avec la version de développement, il y a peut-être moyen de contourner le problème

@fabounet: il y a p-ê moyen de se connecter au signal DBus 'resuming' de UPower (comme j'ai fait avec 'Clock' dernièrement) si ce bug est toujours présent. Mais ça reste une solution de contournement...

petaramesh, Saturday 05 January 2013 à 19:05


Subscription date : 04 January 2013
Messages : 39
matttbe :
Serait-ce peut-être lié à ce bug? => http://www.nvnews.net/vbulletin/showthread.php?t=153132


...on dirait très-très fort le même bug, en effet...

petaramesh, Sunday 06 January 2013 à 15:38


Subscription date : 04 January 2013
Messages : 39
J'ai installé la version du PPA weekly, on verra bien si ça continue à corrompre les icônes - pas pour l'instant - on verra après suspend/resume

petaramesh, Monday 07 January 2013 à 12:09


Subscription date : 04 January 2013
Messages : 39
Avec la version PPA weekly, ça a l'air "un peu mieux", mais j'ai cependant 2 fois constaté la corruption de l'icône "volume audio" dans ma barre du haut (thème default-panel), qu'une simple modification du volume suffit cependant à redessiner correctement. Les grandes icônes de mon dock du bas semblent jusqu'ici résister à la corruption

Side note : En upgradant de la version "stable" à la version "weekly", j'ai remarqué que l'icône du sélecteur de bureau est devenue bcp plus petite et a perdu le "respect des proportions" (devenue plus haute que large...), j'ai du la réagrandir et remettre les proportions via son réglage de configuration.

matttbe, Tuesday 08 January 2013 à 18:59


Subscription date : 24 January 2009
Messages : 12573
Bon aller, il fallait que je me détente un peu, voici un rapide programme en C pour relancer le dock après un suspend/resume:
/*
 * refresh_cd_on_resuming.c
 * 
 * Copyright 2013 Matthieu Baerts <matttbe@Matth>
 * 
 * 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., 51 Franklin Street, Fifth Floor, Boston,
 * MA 02110-1301, USA.
 * 
 * How to use it?
 *  * Install header files of gtk3 and dbus-glib
 *  * Launch:
 *   $ gcc refresh_cd_on_resuming.c -o refresh_cd_on_resuming `pkg-config --libs --cflags gtk+-3.0 dbus-glib-1`
 *   $ ./refresh_cd_on_resuming
 */


#include <stdio.h>
#include <stdlib.h>
#include <gtk/gtk.h>
#include <dbus/dbus-glib.h>

GMainLoop *s_pMainloop;

static 
void _quit (G_GNUC_UNUSED int signal)
{
    
g_main_loop_quit (s_pMainloop);
    
g_main_loop_unref (s_pMainloop);
}

static 
void _on_resuming (void)
{
    
g_print ("Refresh dock after resuming\n");
    
system ("dbus-send --session --dest=org.cairodock.CairoDock /org/cairodock/CairoDock org.cairodock.CairoDock.Reboot");
}

int main(int argcchar **argv)
{
    
DBusGConnection *pConnection;
    
DBusGProxy *pProxy;
    
GError *error NULL;

    
g_type_init ();

    
pConnection dbus_g_bus_get (DBUS_BUS_SYSTEMNULL);
    if (
pConnection == NULL)
    {
        
g_print ("Couldn't connect to session bus\n");
        return 
EXIT_FAILURE;
    }

    
pProxy dbus_g_proxy_new_for_name (pConnection,
        
"org.freedesktop.UPower",
        
"/org/freedesktop/UPower",
        
"org.freedesktop.UPower");

    if (
pProxy == NULL)
    {
        
g_print ("UPower bus not available, can't connect to 'resuming' signal\n");
        return 
EXIT_FAILURE;
    }

    
dbus_g_object_register_marshaller (
        
g_cclosure_marshal_VOID__VOID,
        
G_TYPE_NONE,
        
G_TYPE_INVALID);

    
dbus_g_proxy_add_signal (pProxy"Resuming",
        
G_TYPE_INVALID);
    
dbus_g_proxy_connect_signal (pProxy"Resuming",
        
G_CALLBACK (_on_resuming), NULLNULL);

    
signal (SIGINT_quit);
    
signal (SIGTERM_quit);

    
s_pMainloop g_main_loop_new (NULLFALSE);
    
g_print ("Start!\n");
    
g_main_loop_run (s_pMainloop);

    
g_print ("End!\n");

    
dbus_g_proxy_disconnect_signal (pProxy"Resuming",
            
G_CALLBACK (_on_resuming), NULL);
    
g_object_unref (pProxy);
    
    return 
EXIT_SUCCESS;
}



Pour l'utiliser:
  • enregistrer le code sous un fichier (sous le nom 'refresh_cd_on_resuming.c', ce sera plus simple pour la suite)
  • Installer les fichiers headers de gtk3 (ou 2) et dbus-glib:
    sudo apt-get install -y build-essential pkg-config libgtk-3-dev libdbus-glib-1-dev
  • Compiler le programme (d'abord se rendre dans le bon dossier avec le terminal):
    gcc refresh_cd_on_resuming.c -o refresh_cd_on_resuming `pkg-config --libs --cflags gtk+-3.0 dbus-glib-1`
  • Le lancer:
    ./refresh_cd_on_resuming
    (ou à lancer au démarrage en indiquant le chemin complet vers ce fichier)


Bon, c'est un peu gros mais ça relancera le dock après un retour de mise en veille/hibernation. Si avec le programme, tu as encore des problèmes, c'est que le problème vient d'ailleurs.
Après, si c'est bien ça le problème, il faudra voir avec fabounet qu'est-ce que l'on peut faire. Ça reste un problème avec les drivers NVidia... une option dans Système qui se connecte à se signal et rafraîchi les icônes spéciales? (ou tout)

Side note : En upgradant de la version "stable" à la version "weekly", j'ai remarqué que l'icône du sélecteur de bureau est devenue bcp plus petite et a perdu le "respect des proportions" (devenue plus haute que large...), j'ai du la réagrandir et remettre les proportions via son réglage de configuration.
Yep, normalement fabounet est déjà au courant

petaramesh, Wednesday 09 January 2013 à 10:32


Subscription date : 04 January 2013
Messages : 39
J'ai compilé et lancé ton prog, on va voir ce que ça donne

NB: Le Cairo weekly a des corruptions d'icônes, mais je trouve, bcp moins que le Cairo "stable"...

Guest, Thursday 10 January 2013 à 10:26

J'ai toujours des corruptiosn d'icônes (y compris sur le dernier "weekly" installé ce matin) et avec le prog refresh_cd_on_resuming

Je l'ai compilé et il tourne chez moi (comme "ps" le confirme), mais je doute cependant qu'il fonctionne : Si j'ai des icônes corrompues et que je suspends puis réveille la machine, elles restent corrompues "à l'identique", donnant à penser que refresh_cd_on_resuming n'a pas provoqué le rechargement de quoi que ce soit...

matttbe, Thursday 10 January 2013 à 12:00


Subscription date : 24 January 2009
Messages : 12573
Oui, possible, je ne l'ai pas vraiment testé
Pourrais-tu le lancer depuis le terminal, mettre en veille et revenir sur la session puis poster les messages produits dans le terminal.

Ps: idéalement, il faudrait ajouter avec la ligne avec signal:    signal (SIGTERM, _quit);

matttbe, Thursday 10 January 2013 à 16:51


Subscription date : 24 January 2009
Messages : 12573
Ok, je me connectais au mauvais bus, j'ai oublié de remplacer à la fin de mes tests
Il faut donc remplacer
pConnection dbus_g_bus_get (DBUS_BUS_SESSIONNULL);
par
pConnection dbus_g_bus_get (DBUS_BUS_SYSTEMNULL);
(c'est corrigé plus haut)

Puis recompiler et relancer

Guest, Friday 11 January 2013 à 08:00

J'ai remarqué depuis que les icônes qui se corrompent sont presque tout le temps les mêmes (thème default panel) :

- L'icône "volume audio" dans le dock du haut (se répare en modifiant le volume).
- L'icône du sous-dock Office dans le dock du bas ;
- L'icône du contrôleur de musique dans la barre du bas.

Guest, Saturday 12 January 2013 à 19:24

J'ai recompilé le bigntz. Bizarrement, il semble vouloir relancer le dock quand je passe secteur -> batterie... En tout cas ça relance et "décorrompt" mes icônes Seul hic : Mes docks disparaîssent pendant 15 bonnes secondes avant de réapparaître réparés...

matttbe, Saturday 12 January 2013 à 19:39


Subscription date : 24 January 2009
Messages : 12573
Et c'est bien le mini programme qui relance le dock ou c'est un crash? P-e un problème avec UPower qui gère ça...

petaramesh, Saturday 12 January 2013 à 19:58


Subscription date : 04 January 2013
Messages : 39
Ça je n'en sais rien... Mais je n'ai pas l'impression de l'avoir vu se crasher et revenir quand le mini-pgm ne tourne pas, donc je pense que c'est lui

petaramesh, Saturday 12 January 2013 à 19:59


Subscription date : 04 January 2013
Messages : 39
Y'a un bug dans le BIOS pourave de mon Toshiba qui lui fait dire que la batterie est presque vide et qu'il va "bientôt hiberner" dès que je débranche l'alim - pour autant il ne le fait pas - mais peut-être que ça trigger ton bidule ?

matttbe, Saturday 12 January 2013 à 22:11


Subscription date : 24 January 2009
Messages : 12573
S'il y a un crash du dock, pourrais-tu nous donner un backtrace de ce crash? C'est simple car bien expliqué là => ddd

il va "bientôt hiberner" dès que je débranche l'alim - pour autant il ne le fait pas
Normalement, ce n'est pas le dock qui doit se charger d'hiberner ou mettre en veille (c'est plutôt GNOME qui s'en charge)

petaramesh, Sunday 13 January 2013 à 00:00


Subscription date : 04 January 2013
Messages : 39
Je veux dire : Gnome prévient que la machine "va bientôt hiberner" (ce qu'elle ne fait pas), et pendant ce temps Cairo redémarre (par la grâce de refresh_cd_on_resuming ?)

matttbe, Sunday 13 January 2013 à 00:26


Subscription date : 24 January 2009
Messages : 12573
(par la grâce de refresh_cd_on_resuming ?)
Il suffit de lancer un des 2 programmes (refresh ou Cairo-Dock) depuis un terminal et on le verra tout de suite

Problems at use | Problèmes à l'utilisation

Subjects Author Language Messages Last message
[Locked] Corruption des icônes
Page : 1 2
petaramesh Français 25 fabounet [Read]
14 February 2013 à 23:36


Glx-Dock / Cairo-Dock List of forums Problems at use | Problèmes à l'utilisation Corruption des icônes Top

Online users :

Powered by ElementSpeak © 2007 Adrien Pilleboue, 2009-2013 Matthieu Baerts.
Dock based on CSS Dock Menu (Ndesign) with jQuery. Icons by zgegball
Cairo-Dock is a free software under GNU-GPL3 licence. First stable version created by Fabounet.
Many thanks to TuxFamily for the web Hosting and Mav for the domain name.