On Sat, Sep 4, 2010 at 12:14 PM, Cornelius Hald <[email protected]> wrote:
> Hi Luca,
>
> On Fri, 2010-09-03 at 16:24 +0200, Luca Donaggio wrote:
> > I know that compositing is disabled in fullscreen, as some composited
> > widget (for example the fullscreen button in hildon-extras) are shown
> > with a black background instead of a semi-transparent one.
> > But I noticed one thing: if a hildon-banner appears in fullscreen when
> > one of such widgets is on the screen, the window manager turns
> > compositing on (the translucid background of the other widget is
> > shown), just to turn it off when the banner disappears.
> >
> > Is there a way to trick the window manager to act the same for
> > arbitrary widgets as for hildon-banners?
>
> I can't really answer your question. Just add a comment. If I'm going
> into fullscreen mode in Conboy the button background is not black. It
> semi-transparent. Not sure that helps something, though...
>
> Cheers,
> Conny
>
>
>
I still had no luck solving this problem, but at least I can reproduce it; I
cooked a very simple program to show what's going on (attached), maybe
someone more skilled can help me!
--
Luca Donaggio
/*
gcc -Wall `pkg-config gtk+-2.0 hildon-1 hildon-extras-1 --cflags --libs` he-fullscreen-example.c -o he-fullscreen-example
*/
#include <gtk/gtk.h>
#include <hildon/hildon.h>
#include <hildon-extras/he-fullscreen-button.h>
static void go_fullscreen(GtkWidget *callerobj,gpointer data) {
if (!(gdk_window_get_state(gtk_widget_get_window(GTK_WIDGET (data))) & GDK_WINDOW_STATE_FULLSCREEN)) {
gtk_window_fullscreen(GTK_WINDOW (data));
} else {
gtk_window_unfullscreen(GTK_WINDOW (data));
}
}
int main () {
HildonProgram *prog;
HildonWindow *mainwin;
/* GtkWidget *panarea, *evbox, *image; */
GtkWidget *textview;
HeFullscreenButton *fsbut;
HildonAppMenu *menu;
GtkWidget *button;
hildon_gtk_init (NULL, NULL);
prog = HILDON_PROGRAM (hildon_program_get_instance ());
mainwin = HILDON_WINDOW (hildon_window_new ());
gtk_window_set_title (GTK_WINDOW (mainwin),"Example");
hildon_program_add_window (prog, mainwin);
menu = HILDON_APP_MENU (hildon_app_menu_new ());
button = gtk_button_new_with_label ("Fullscreen");
g_signal_connect_after (button, "clicked", G_CALLBACK (go_fullscreen), mainwin);
hildon_app_menu_append (menu, GTK_BUTTON (button));
button = gtk_button_new_with_label ("Quit");
g_signal_connect_after (button, "clicked", G_CALLBACK (gtk_main_quit), NULL);
hildon_app_menu_append (menu, GTK_BUTTON (button));
gtk_widget_show_all (GTK_WIDGET (menu));
hildon_window_set_app_menu (mainwin, menu);
/*panarea = hildon_pannable_area_new();
gtk_container_add (GTK_CONTAINER (mainwin), panarea);
image = gtk_image_new_from_file("image.jpg");
evbox = gtk_event_box_new();
gtk_container_add (GTK_CONTAINER (evbox), image);
hildon_pannable_area_add_with_viewport(HILDON_PANNABLE_AREA (panarea),evbox);*/
textview = hildon_text_view_new();
gtk_container_add(GTK_CONTAINER (mainwin), textview);
gtk_widget_show_all (GTK_WIDGET (mainwin));
fsbut = he_fullscreen_button_new(GTK_WINDOW (mainwin));
gtk_main ();
return 0;
}
_______________________________________________
maemo-developers mailing list
[email protected]
https://lists.maemo.org/mailman/listinfo/maemo-developers