Enlightenment CVS committal

Author  : urandom
Project : e_modules
Module  : notification

Dir     : e_modules/notification/src


Modified Files:
        e_mod_main.c 


Log Message:
add the "standard" way of supporting shaped windows, by checking the "shaped" 
data item from edje.

===================================================================
RCS file: /cvs/e/e_modules/notification/src/e_mod_main.c,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -3 -r1.5 -r1.6
--- e_mod_main.c        22 Feb 2008 14:53:22 -0000      1.5
+++ e_mod_main.c        25 Feb 2008 07:23:57 -0000      1.6
@@ -291,6 +291,8 @@
    E_Container *con;
    Popup_Data *popup;
    char buf[PATH_MAX];
+   const char *shape_option;
+   int shaped;
    Ecore_X_Window_State state[5] = { 
      ECORE_X_WINDOW_STATE_STICKY,
      ECORE_X_WINDOW_STATE_SKIP_TASKBAR,
@@ -335,9 +337,26 @@
    edje_object_signal_callback_add(popup->theme, "notification,find", "theme", 
                                    _notification_theme_cb_find, popup);
 
-   /* Uncomment to use shaped popups */
-   //e_win_shaped_set(popup->win, 1);
-   //e_win_avoid_damage_set(popup->win, 1);
+   shape_option = edje_object_data_get(popup->theme, "shaped");
+   if (shape_option)
+     {
+       if (!strcmp(shape_option, "1"))
+         shaped = 1;
+       else
+         shaped = 0;
+       if (e_config->use_composite)
+         {
+            ecore_evas_alpha_set(popup->win->ecore_evas, shaped);
+             e_container_window_raise(popup->win->container,
+                     
ecore_evas_software_x11_window_get(popup->win->ecore_evas),
+                     ecore_evas_layer_get(popup->win->ecore_evas));
+         }
+       else
+          {
+             e_win_shaped_set(popup->win, shaped);
+             e_win_avoid_damage_set(popup->win, shaped);
+          }
+     }
 
    _notification_popup_refresh(popup);
    _notification_popup_place(popup, evas_list_count(dd->popups));



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to