From cd002b398d9ebdbfe7590508766014e5ea4d5e2c Mon Sep 17 00:00:00 2001 From: Peter Stephenson Date: Mon, 31 Mar 2008 08:44:34 +0000 Subject: unposted: use kdialog in calendar_show if appropriate --- ChangeLog | 5 +++++ Functions/Calendar/calendar_show | 14 ++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/ChangeLog b/ChangeLog index 2fb3e2ad2..1cb21e346 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-03-31 Peter Stephenson + + * unposted: Functions/Calendar/calendar_show: if in KDE, + use kdialog rather than xmessage. + 2008-03-30 Peter Stephenson * 24708: Misc/globtests, Src/pattern.c, Test/D02glob.ztst: diff --git a/Functions/Calendar/calendar_show b/Functions/Calendar/calendar_show index 13fc6a491..5be589945 100644 --- a/Functions/Calendar/calendar_show +++ b/Functions/Calendar/calendar_show @@ -9,11 +9,21 @@ zmodload -i zsh/parameter || return # Use xmessage to display the message if the start and stop time # are the same, indicating we have been scheduled to display it. -# Don't do this if there's already an xmessage for the same user. +# Don't do this if there's already an notification/message for the same user. # HERE: this should be configurable and we should be able to do # better if xmessage isn't available, e.g. wish. if [[ -n $DISPLAY && $start -eq $stop ]]; then - if [[ -n ${commands[xmessage]} ]]; then + if [[ -n ${commands[kdialog]} && -n $KDE_SESSION_UID ]] && dcop >&/dev/null + then + # We're in a KDE session, most probably. + # Simple: + cmd=(kdialog --msgbox) + # Alternative: + # calendar_knotify_show() { + # dcop knotify default notify calendar zsh "$*" '' '' 2 0 + # } + # cmd=(calendar_knotify_show) + elif [[ -n ${commands[xmessage]} ]]; then cmd=(xmessage -center) fi if [[ -n $cmd[1] ]] && -- cgit 1.4.1