linphone-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Linphone-developers] Incoming Call Event


From: Simon Morlat
Subject: Re: [Linphone-developers] Incoming Call Event
Date: Wed, 23 May 2007 14:34:39 +0200
User-agent: KMail/1.9.5

Hi,
Thanks a lot for your investigation. I'm going to implement according to your 
idea, using your method.

Simon

Le jeudi 17 mai 2007 01:02, Stefano Stabellini a écrit :
> Simon Morlat wrote:
> > Hi,
> >
> > I already looked at how to put linphone in systray; this will be
> > implemented in next releases.
>
> great!!
>
> > Concerning the popup, normally upon incoming call, gtk_widget_show() is
> > called on the main window. On previous releases of gtk, this caused the
> > window to become top level. However this is no more the case in current
> > versions of gtk. There is probably a gtk_window_*() method for that.
> > If you find the appropriate gtk method, then you can just add it into
> > gtk/linphone.c, in this method:
> >
> > void linphone_gnome_ui_show(LinphoneGnomeUI *ui)
> > {
> >     if (ui->main_window.window==NULL){
> >             main_window_create(ui);
> >
> >     }
> > gtk_widget_show(ui->main_window.window); /* <- replace here by the good
> > method ui->main_window.shown_once=TRUE;
> > }
>
> I tried many different methods, both gtk_* and gdk_*, but the only one
> that is able to raise the window on top of everything else is this:
>
> gdk_window_set_keep_above (ui->main_window.window->window, 1);
>
> this method set linphone's window as "above everything" and can not be
> put below another window until
>
> gdk_window_set_keep_above (ui->main_window.window->window, 0);
>
> is called and this modality is deactivated.
> Actually when
> gdk_window_set_keep_above (ui->main_window.window->window, 0) is called
> the window goes automatically below the other windows, where it was before.
> I think that gdk_window_set_keep_above is also the method used by Ekiga
> to raise the popup when there is a new incoming call. The problem is
> that this is fine for a popup that can be closed without any
> consequences, but in the case of linphone, closing the main window means
> closing the application (unless you are going to change this when you
> implement the systray).
> As a consequence you can use this method passing 1 when there is an
> incoming call, but the user is not able to set linphone in background
> until you call this method again passing 0, but when you do the window
> will go automatically to the background!
>
> An idea could be to call the method with 1 when there is an incoming
> call and call the method again with 0 when the user clicks on accept or
> refuse, or if the user decides not to reply when linphone stops to ring.
> This is exactly what ekiga does with its popup, the only difference is
> that the user can also close the popup pressing on the X, but in our
> case this would terminate linphone.
>
>
>
>
>
> _______________________________________________
> Linphone-developers mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/linphone-developers




reply via email to

[Prev in Thread] Current Thread [Next in Thread]