Git Version | Version Git
Subscription date : 21 October 2009
Messages : 1575
|
Klipper ne montre plus aucune entrée, alors que celui de KDE les montre toutes.
Quand je click sur Klipper dans le systray de CD, voici l'erreur du debug :
dbusmenu_menuitem_send_about_to_show: assertion `DBUSMENU_IS_MENUITEM(mi)' failed
Ça paraît que j'suis sous Kubuntu, j'ai 5 thread qui roulent. |
matttbe, Tuesday 07 February 2012 à 10:07
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Bizarre. Est-ce que tu as ce problème tout le temps? (ou après avoir tuer (pas top... ou alors un kill -5) qqs fois le dock?)
As-tu aussi ce problème avec d'autres 'indicator applets'?
(Pourquoi tu n'utilises pas Clipper? ) |
Subscription date : 21 October 2009
Messages : 1575
|
Bon, Canonical va laisser tomber le support à Kubuntu... Et ils suggèrent de voir openSUSE KDE. Au moment où moi je fais l'inverse car openSUSE n'est pas très cool avec CD et sans CD je déteste ma distro.
http://www.muktware.com/news/3287/kubuntu-dead-time-switch-linux-mint-kde-opensuse
Oui j'ai le prob de klipper tout le temps. Mais à faque fois que je sors de l'hibernation, je fais un pkill cairo-dock et je le repars dans mon script, à cause de l'icône AMAROK qui disparaît sous nVIDIA. Donc évidemment je perds tout ce qui était en mémoire dans klipper (ça me fait chier mais pas le choix, maudit AMAROK+nVIDIA), mais même après quand je copie en mémoire du texte ça n'apparait pas dans klipper.
Clipper? Il y a un autre *lipper dans CD? |
matttbe, Tuesday 07 February 2012 à 17:30
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Mais à faque fois que je sors de l'hibernation, je fais un pkill cairo-dock et je le repars dans mon script, à cause de l'icône AMAROK qui disparaît sous nVIDIA C'est pour cela qu'il ne faut pas faire un kill mais utiliser une commande dbus (voir wiki) ou un kill -5 (mais même...) |
Subscription date : 21 October 2009
Messages : 1575
|
Oui depuis ce matin je suis en train de regarder l'option du dbus et aussi utiliser les scripts dans .../sleep.d. Ça marchait pas sous suse, mais avec kubuntu ça devrait, je l'espère.
Donc klipper a peut-être été massacré par mes pkill. Mais comment le rendre fonctionnel à nouveau? Un reboot? Log-out/log-in?
Ton wiki a assez de doc pour indiquer quoi faire pour "dbusser" un restart de CD? |
Subscription date : 21 October 2009
Messages : 1575
|
dbus-send --session --dest=org.cairodock.CairoDock /org/cairodock/CairoDock org.cairodock.CairoDock.Reboot
Ou peut-être encore seulement recharger MusicPlayer, si ça corrige le bug graphique nvidia.
dbus-send --session --dest=org.cairodock.CairoDock /org/cairodock/CairoDock org.cairodock.CairoDock.ReloadModule string:musicplayer |
Subscription date : 21 October 2009
Messages : 1575
|
Avec ça au moins si je réussi pas à faire rouler le script au resume pour x raison, en le roulant manuellement ça sera quand même plus propre que mon pkill, n'est-ce pas?
Techniquement parlant mattttttttbe, en quoi une commande dbus fait fermer de façon plus "propre" une applic qu'un pkill? |
matttbe, Tuesday 07 February 2012 à 21:39
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Il y a différents moyens de fermer une application, soit par elle-même (donc c'est prévu par le programme => utiliser le bouton quitter ou la commande dbus pour le dock) soit via l'extérieur avec un kill mais il y a différentes façons de tuer un processus en fonction du signal donné (voir le man des commandes *kill* ; ex: je crois que c'est le signal '5' qui est en premier envoyé par le système à toutes tes applis lorsque tu fermes ta session et si ça ne se ferme pas assez vite, un signal plus fort, '9' il me semble, est envoyé) |
Subscription date : 21 October 2009
Messages : 1575
|
J'utilise Klipper dans le systray car il est dans le systray, ça me fait 1 icône de moins dans le dock car j'utilise le sous-dock mode pour systray. Le Clipper de CD fonctionne bien, mais celui dans le systray non.
matttbe, je ne comprends pas...
Je lance la commande suivante et ça retourne aucune erreur, rien, mais ça ne lance pas le module musicPlayer
dbus-send --session --dest=org.cairodock.CairoDock /org/cairodock/CairoDock org.cairodock.CairoDock.ReloadModule string:musicPlayer
Pourtant si je remplace musicPlayer par dustbin ça reload dustbin je le vois faire.
Pourtant le fichier de config de MusicPlayer s'appelle bien musicPlayer.conf.
cairo_dock_reload_module_instance (musicPlayer, 0)
size: 0 => 45x45
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-icon-factory.c:cairo_dock_load_icon_image:190)
cairo_dock_load_icon_image (Amarok 2) -> 45.00x45.00
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-plug-ins/musicPlayer/src/applet-init.c:reload:167)
reload (/home/frank/.config/cairo-dock/current_theme/plug-ins/musicPlayer/musicPlayer.conf) |
fabounet, Wednesday 08 February 2012 à 13:48
|
|
Subscription date : 30 November 2007
Messages : 17118
|
pour le nom des applets, faut regarder dans le applet-init.c
des fois c'est pas tout à fait pareil que le .conf (surtout pour les vieilles applets)
je sais plus s'il y'a pas une commande Dbus pour sortir la liste des applets |
Subscription date : 21 October 2009
Messages : 1575
|
Hum, moi je vois musicPlayer, est-ce que je regarde à la bonne place?
CD_APPLET_DEFINE_BEGIN (N_("musicPlayer")
/**
* This file is a part of the Cairo-Dock project
*
* Copyright : (C) see the 'copyright' file.
* E-mail : see the 'copyright' file.
*
* 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 3
* 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, see <http://www.gnu.org/licenses/>.
*/
#include <stdlib.h>
#include <glib/gstdio.h>
#include "applet-config.h"
#include "applet-notifications.h"
#include "applet-struct.h"
#include "applet-init.h"
#include "applet-draw.h"
#include "applet-musicplayer.h"
#include "applet-dbus.h"
#include "3dcover-draw.h"
#include "applet-xmms.h" //Support XMMS
#include "applet-xmms2.h" //Support XMMS2
#include "applet-exaile.h" //Support Exaile
#include "applet-exaile3.h" //Support Exaile 0.3
#include "applet-songbird.h" //Support Songbird
#include "applet-banshee.h" //Support Banshee
#include "applet-rhythmbox.h" //Support Rhythmbox
#include "applet-qmmp.h" //Support Qmmp
#include "applet-gmusicbrowser.h" //Support GMusicBrowser
#include "applet-guayadeque.h" //Support Guayadeque
#include "applet-quodlibet.h" //Support QuodLibet
#include "applet-listen.h" //Support Listen
#include "applet-amarok2.h" //Support Amarok 2
#include "applet-audacious.h" //Support Audacious
#include "applet-clementine.h" // Support Clementine
CD_APPLET_DEFINE_BEGIN (N_("musicPlayer"),
2,0,0,
CAIRO_DOCK_CATEGORY_APPLET_ACCESSORY,
N_("This applet lets you control any music player.\n"
"Left click to Play/Pause, middle-click to play Next song.\n"
"Scroll up/down to play previous/next song.\n"
"You can drag and drop songs on the icon to put them in the queue (depends on Player),\n"
" and jpeg image to use as cover.\n"
"Note : For XMMS, you have to install the 'xmms-infopipe' plug-in.\n"
" For SongBird, you have to install its dbus add-on.\n"
" For Exaile 0.3, you have to activate its MPRIS plug-in"),
"ChanGFu (Rémy Robertson), Mav (Yann SLADEK), Tofe, Jackass, Nochka85, Fabounet")
CD_APPLET_DEFINE_COMMON_APPLET_INTERFACE
CD_APPLET_ALLOW_EMPTY_TITLE
CD_APPLET_DEFINE_END
//\___________ Here is where you initiate your applet. myConfig is already set at this point, and also myIcon, myContainer, myDock, myDesklet (and myDrawContext if you're in dock mode). The macro CD_APPLET_MY_CONF_FILE and CD_APPLET_MY_KEY_FILE can give you access to the applet's conf-file and its corresponding key-file (also available during reload). If you're in desklet mode, myDrawContext is still NULL, and myIcon's buffers has not been filled, because you may not need them then (idem when reloading).
CD_APPLET_INIT_BEGIN
// Add here all player's registering functions
// Don't forget to add the registered Name in ../data/musicPlayer.conf.in
cd_musicplayer_register_xmms_handler ();
cd_musicplayer_register_exaile_handler();
cd_musicplayer_register_exaile3_handler();
cd_musicplayer_register_songbird_handler();
cd_musicplayer_register_banshee_handler();
cd_musicplayer_register_rhythmbox_handler();
cd_musicplayer_register_qmmp_handler();
cd_musicplayer_register_quodlibet_handler();
cd_musicplayer_register_listen_handler();
cd_musicplayer_register_amarok2_handler();
cd_musicplayer_register_xmms2_handler();
cd_musicplayer_register_audacious_handler();
cd_musicplayer_register_guayadeque_handler();
cd_musicplayer_register_clementine_handler();
cd_musicplayer_register_gmusicbrowser_handler();
gchar *cCoverPath = g_strdup_printf ("%s/musicplayer", g_cCairoDockDataDir);
if (! g_file_test (cCoverPath, G_FILE_TEST_EXISTS))
{
if (g_mkdir (cCoverPath, 7*8*8+7*8+5) != 0)
cd_warning ("couldn't create directory %s", cCoverPath);
}
g_free (cCoverPath);
//\_______________ on definit un mode de rendu pour notre desklet.
if (myDesklet) {
CD_APPLET_SET_DESKLET_RENDERER ("Simple");
}
else if (myIcon->cName == NULL || *myIcon->cName == '\0')
CD_APPLET_SET_NAME_FOR_MY_ICON (myConfig.cMusicPlayer);
//\_______________ on charge le theme 3D si necessaire.
if (CD_APPLET_MY_CONTAINER_IS_OPENGL && myConfig.bOpenglThemes)
myConfig.bOpenglThemes = cd_opengl_load_3D_theme (myApplet, myConfig.cThemePath);
//\_______________ on demarre le backend.
// Pour forcer le dessin initial.
myData.iPlayingStatus = PLAYER_NONE;
myData.pPreviousPlayingStatus = -1;
myData.iPreviousTrackNumber = -1;
myData.iPreviousCurrentTime = -1;
myData.pCurrentHandeler = cd_musicplayer_get_handler_by_name (myConfig.cMusicPlayer);
if (myData.pCurrentHandeler == NULL) {
cd_warning ("MP : this player (%s) is not supported.", myConfig.cMusicPlayer);
return;
}
cd_musicplayer_launch_handler (); // connexion au bus, detection de l'appli, recuperation de l'etat du lecteur si il est en marche, sinon dessin de l'icone "eteint".
//\_______________ On prend en charge l'icone de l'appli player.
if (myConfig.bStealTaskBarIcon)
CD_APPLET_MANAGE_APPLICATION (myData.pCurrentHandeler->appclass);
//\_______________ On s'abonne aux notifications.
CD_APPLET_REGISTER_FOR_CLICK_EVENT;
CD_APPLET_REGISTER_FOR_MIDDLE_CLICK_EVENT;
CD_APPLET_REGISTER_FOR_BUILD_MENU_EVENT;
CD_APPLET_REGISTER_FOR_DROP_DATA_EVENT;
CD_APPLET_REGISTER_FOR_SCROLL_EVENT;
if (CD_APPLET_MY_CONTAINER_IS_OPENGL && myConfig.bOpenglThemes)
{
CD_APPLET_REGISTER_FOR_UPDATE_ICON_SLOW_EVENT; // pour les animation de transitions.
if (myDesklet) // On ne teste le survol des boutons que si l'applet est détachée
{
cairo_dock_register_notification_on_object (myContainer,
NOTIFICATION_MOUSE_MOVED,
(CairoDockNotificationFunc) cd_opengl_test_mouse_over_buttons,
CAIRO_DOCK_RUN_AFTER,
myApplet);
}
}
CD_APPLET_INIT_END
//\___________ Here is where you stop your applet. myConfig and myData are still valid, but will be reseted to 0 at the end of the function. In the end, your applet will go back to its original state, as if it had never been activated.
CD_APPLET_STOP_BEGIN
CD_APPLET_UNREGISTER_FOR_CLICK_EVENT;
CD_APPLET_UNREGISTER_FOR_MIDDLE_CLICK_EVENT;
CD_APPLET_UNREGISTER_FOR_BUILD_MENU_EVENT;
CD_APPLET_UNREGISTER_FOR_DROP_DATA_EVENT;
CD_APPLET_UNREGISTER_FOR_SCROLL_EVENT;
cairo_dock_remove_notification_func_on_object (myContainer,
NOTIFICATION_MOUSE_MOVED,
(CairoDockNotificationFunc) cd_opengl_test_mouse_over_buttons,
myApplet);
// On stoppe les boucles de recup de la pochette.
if (myData.iSidCheckXmlFile != 0)
g_source_remove (myData.iSidCheckXmlFile);
if (myData.iSidCheckCover != 0)
g_source_remove (myData.iSidCheckCover);
if (myData.iSidGetCoverInfoTwice != 0)
g_source_remove (myData.iSidGetCoverInfoTwice);
// on libere la classe.
CD_APPLET_MANAGE_APPLICATION (NULL);
CD_APPLET_STOP_END
//\___________ The reload occurs in 2 occasions : when the user changes the applet's config, and when the user reload the cairo-dock's config or modify the desklet's size. The macro CD_APPLET_MY_CONFIG_CHANGED can tell you this. myConfig has already been reloaded at this point if you're in the first case, myData is untouched. You also have the macro CD_APPLET_MY_CONTAINER_TYPE_CHANGED that can tell you if you switched from dock/desklet to desklet/dock mode.
CD_APPLET_RELOAD_BEGIN
if (myDock && (myIcon->cName == NULL || *myIcon->cName == '\0'))
CD_APPLET_SET_NAME_FOR_MY_ICON (myConfig.cMusicPlayer);
//\_______________ On reset surfaces et textures.
int i;
for (i = 0; i < PLAYER_NB_STATUS; i ++) { // reset surfaces.
if (myData.pSurfaces[i] != NULL) {
cairo_surface_destroy (myData.pSurfaces[i]);
myData.pSurfaces[i] = NULL;
}
}
cd_opengl_reset_opengl_datas (myApplet);
//\_______________ On recharge entierement le theme 3D.
if (CD_APPLET_MY_CONFIG_CHANGED)
{
if (myDesklet && CD_APPLET_MY_CONTAINER_TYPE_CHANGED) // we are now in a desklet, set a renderer.
{
CD_APPLET_SET_DESKLET_RENDERER ("Simple");
}
CD_APPLET_UNREGISTER_FOR_UPDATE_ICON_SLOW_EVENT;
cairo_dock_remove_notification_func_on_object (CD_APPLET_MY_OLD_CONTAINER,
NOTIFICATION_MOUSE_MOVED,
(CairoDockNotificationFunc) cd_opengl_test_mouse_over_buttons,
myApplet);
if (CD_APPLET_MY_CONTAINER_IS_OPENGL && myConfig.bOpenglThemes)
{
CD_APPLET_REGISTER_FOR_UPDATE_ICON_SLOW_EVENT;
if (myDesklet) // On ne teste le survol des boutons que si l'applet est detachee
cairo_dock_register_notification_on_object (myContainer,
NOTIFICATION_MOUSE_MOVED,
(CairoDockNotificationFunc) cd_opengl_test_mouse_over_buttons,
CAIRO_DOCK_RUN_AFTER,
myApplet);
}
}
if (CD_APPLET_MY_CONTAINER_IS_OPENGL && myConfig.bOpenglThemes)
{
myConfig.bOpenglThemes = cd_opengl_load_3D_theme (myApplet, myConfig.cThemePath);
}
//\_______________ On force le redessin.
//myData.iPlayingStatus = PLAYER_NONE;
myData.pPreviousPlayingStatus = -1;
if( myData.cPreviousRawTitle )
{
g_free (myData.cPreviousRawTitle);
myData.cPreviousRawTitle = NULL;
}
if( myData.cPreviousCoverPath )
{
g_free (myData.cPreviousCoverPath);
myData.cPreviousCoverPath = NULL;
}
myData.iPreviousTrackNumber = -1;
myData.iPreviousCurrentTime = -1;
myData.cover_exist = FALSE;
myData.bCoverNeedsTest = FALSE;
myData.iNbCheckFile = 0;
myData.iCurrentFileSize = 0;
myData.iGetTimeFailed = 0;
//\_______________ On gere le changement de player ou on redessine juste l'icone.
if (CD_APPLET_MY_CONFIG_CHANGED) {
// on stoppe l'ancien backend et on relance le nouveau.
if (myData.pCurrentHandeler)
{
cd_musicplayer_stop_handler (); // libere tout ce qu'occupe notre ancien handler.
CD_APPLET_MANAGE_APPLICATION (NULL);
}
myData.pCurrentHandeler = cd_musicplayer_get_handler_by_name (myConfig.cMusicPlayer);
if (myData.pCurrentHandeler == NULL)
{
cd_warning ("MP : this player (%s) is not supported.", myConfig.cMusicPlayer);
return FALSE;
}
cd_musicplayer_launch_handler ();
if (myConfig.bStealTaskBarIcon)
CD_APPLET_MANAGE_APPLICATION (myData.pCurrentHandeler->appclass);
}
else { // on redessine juste l'icone.
cd_musicplayer_update_icon (FALSE); // FALSE pour ne pas avoir 2 fois le dialogue.
if (! myData.cover_exist)
{
if(myData.iPlayingStatus == PLAYER_PLAYING)
{
cd_musicplayer_set_surface (PLAYER_PLAYING);
}
else
{
cd_musicplayer_set_surface (PLAYER_PAUSED);
}
}
}
CD_APPLET_RELOAD_END |
Subscription date : 21 October 2009
Messages : 1575
|
Donc est-ce que musicplayer accepte les commandes dbus? |
matttbe, Saturday 11 February 2012 à 20:35
|
|
Subscription date : 24 January 2009
Messages : 12573
|
CD_APPLET_DEFINE_BEGIN (N_("musicPlayer") Donc le nom est bien 'musicPlayer' et pas 'musicplayer' |
Subscription date : 21 October 2009
Messages : 1575
|
Exactement. Mais malgré tout dbus ne réussi pas à redémarrer le module. |
matttbe, Saturday 11 February 2012 à 22:38
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Chez moi, ça relance bien le module mais peut-être que pour ton cas, il faut modifier l'icône ou donner un effet pour forcer le dock à redessiner l'icône. |
Subscription date : 21 October 2009
Messages : 1575
|
Ah?
Bien je viens de changer l'icône pour iPod et ça ne reload pas le module.
Voici le debug :
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-module-factory.c:cairo_dock_reload_module_instance:560)
cairo_dock_reload_module_instance (musicPlayer, 1)
cairo_dock_set_icon_size ((null), 0x1c41570)
~~~~~~~~~~~~ size: 45 => 39x39
~~~~~~~~~~~~ => 39x39
cairo_dock_load_icon_image ((null), 39x39)
cairo_dock_create_texture_from_surface (39x39)
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-packages.c:cairo_dock_get_package_path:766)
cairo_dock_get_package_path (/usr/share/cairo-dock/plug-ins/musicPlayer/themes, /home/frank/.config/cairo-dock/extras/musicPlayer, musicPlayer)
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-plug-ins/musicPlayer/src/applet-init.c:reload:167)
reload (/home/frank/.config/cairo-dock/current_theme/plug-ins/musicPlayer/musicPlayer.conf)
cairo_dock_create_texture_from_surface (39x39)
cairo_dock_create_texture_from_surface (39x39)
cairo_dock_create_texture_from_surface (2x1)
cairo_dock_create_texture_from_surface (9x9)
cairo_dock_create_texture_from_surface (9x9)
cairo_dock_create_texture_from_surface (3x3)
cairo_dock_create_texture_from_surface (9x9)
cairo_dock_create_texture_from_surface (2x1)
cairo_dock_create_texture_from_surface (9x9)
cairo_dock_create_texture_from_surface (2x1)
cairo_dock_create_texture_from_surface (9x9)
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-plug-ins/musicPlayer/src/applet-musicplayer.c:cd_musicplayer_stop_current_handler:198)
MP : stopping Amarok 2
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-class-manager.c:cairo_dock_deinhibite_class:465)
cairo_dock_deinhibite_class (amarok)
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-class-manager.c:_cairo_dock_remove_icon_from_class:451)
_cairo_dock_remove_icon_from_class (amarok)
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-class-manager.c:cairo_dock_deinhibite_class:467)
bStillInhibited : 0
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-class-manager.c:cairo_dock_deinhibite_class:499)
l'inhibiteur a perdu toute sa mana
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-class-manager.c:cairo_dock_deinhibite_class:504)
plus de classe
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-plug-ins/musicPlayer/src/applet-musicplayer.c:cd_musicplayer_set_current_handler:435)
cd_musicplayer_set_current_handler (Amarok 2)
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-plug-ins/musicPlayer/src/applet-musicplayer.c:cd_musicplayer_stop_current_handler:198)
MP : stopping Amarok 2
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-dbus.c:cairo_dock_dbus_detect_application_async:312)
cairo_dock_dbus_detect_application_async (org.mpris.MediaPlayer2.org.mpris.MediaPlayer2.amarok)
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-class-manager.c:cairo_dock_set_data_from_class:1878)
cairo_dock_set_data_from_class (amarok)
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-class-manager.c:cairo_dock_set_data_from_class:1883)
no class amarok or no attributes
*** cd_musicplayer_apply_status_surface (0)
cairo_dock_create_texture_from_surface (39x39)
cairo_dock_create_texture_from_surface (89x24)
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-class-manager.c:cairo_dock_inhibite_class:334)
cairo_dock_inhibite_class (amarok)
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-dbus.c:_on_detect_application:257)
detection du service org.mpris.MediaPlayer2.org.mpris.MediaPlayer2.amarok ...
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-plug-ins/musicPlayer/src/applet-musicplayer.c:_on_detect_mpris2:419)
MPRIS2 presence on the bus: 0
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-dbus.c:cairo_dock_dbus_detect_application_async:312)
cairo_dock_dbus_detect_application_async (org.kde.amarok)
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-dbus.c:_free_detect_application:291)
free detection data
message : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-dbus.c:_on_detect_application:257)
detection du service org.kde.amarok ...
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-plug-ins/musicPlayer/src/applet-musicplayer.c:_on_detect_handler:407)
org.kde.amarok presence on the bus: 0
debug : (/home/frank/stuff/Downloads/cairo-dock_bzr/cairo-dock-core/src/gldit/cairo-dock-dbus.c:_free_detect_application:291)
free detection data
cairo_dock_update_dock_size (0x1c41570, 0)
>>> iMaxIconHeight : 45, ratio : 1.00, fFlatDockWidth : 1680.00
cairo_dock_update_input_shape (1680x55; 1680x86)
*** rect 330; 24
*** rect 551; 24
*** rect 1028; 24
*** rect 1447; 24
cairo_dock_set_icons_geometry_for_window_manager (main:1, ref:0) |
Subscription date : 21 October 2009
Messages : 1575
|
Peut-être que ça redémarre mais que c'est très rapide?
Alors si oui ça signifie que l'icône ne se redessine pas au redémarrage, car après un resume le bug nvidia demeure même si je reload musicPlayer. |
matttbe, Sunday 12 February 2012 à 00:27
|
|
Subscription date : 24 January 2009
Messages : 12573
|
En fait, je crois que le problème vient des buffers OpenGL et donc ça affecte le dessin des icônes "dynamiques" (musicPlayer, mais aussi toutes les jauges, les graphs ou clock, etc.). Par contre, pour clock ou pour un graphique, vu que le dessin est modifié régulièrement, ça ne pose pas de problème...
Donc, pour solution ton bug, un reload ne suffit pas, il faudrait soit désactiver puis activer musicPlayer ou forcer le dessin (changer l'icône mais bon, ce n'est pas une simple icône ou alors changer de musique pour afficher une pochette différente ).
Donc, ceci pourrait faire l'affaire: dbus-send --session --dest=org.cairodock.CairoDock /org/cairodock/CairoDock org.cairodock.CairoDock.ActivateModule string:musicPlayer boolean:false
# peut-être avoir un très court sleep => sleep 0.5 #
dbus-send --session --dest=org.cairodock.CairoDock /org/cairodock/CairoDock org.cairodock.CairoDock.ActivateModule string:musicPlayer boolean:true
PS: oui, le reload, c'est très rapide |
Subscription date : 21 October 2009
Messages : 1575
|
Ouioui si je démarre Amarok le dessin se fait car il load une toune directement et donc le cover apparait. Mais je ne vais pas démarrer Amarok à chaque resume comme solution.
Alors il reloadait... mais tellement rapide que rien n'y paraissait. Et comme le bug ne semble pas lié au fait de reloader, ça ne corrigeait rien. T'ai pas mal bon, matttbe.
Un sleep en bas de 1 ça existe??? Ah ben là tu viens de m'apprendre de quoi! loll
Mais où on peut trouver la doc qui indique les commandes possibles avec dbus?
Reload, Quit, Reboot, ActivateModule, etc...
Je viens de l'essayer, ça fonctionne bien. Reste à l'essayer après un resume. Donc dimanche vers les 17h mon heure je devrais le savoir. Moment de vérité!! |
matttbe, Sunday 12 February 2012 à 02:04
|
|
Subscription date : 24 January 2009
Messages : 12573
|
Mais où on peut trouver la doc qui indique les commandes possibles avec dbus?
Reload, Quit, Reboot, ActivateModule, etc... Sur le wiki => http://dbus.glx-dock.org |
Git Version | Version Git
|