Sophie

Sophie

distrib > Mageia > 5 > x86_64 > by-pkgid > 392c78d54282e429bf98943f5739fb1b > files > 5

matchbox-window-manager-1.2-21.mga5.src.rpm

diff -p -up matchbox-window-manager-1.2/src/composite-engine.c.drakx-version matchbox-window-manager-1.2/src/composite-engine.c
--- matchbox-window-manager-1.2/src/composite-engine.c.drakx-version	2007-01-25 18:50:14.000000000 +0100
+++ matchbox-window-manager-1.2/src/composite-engine.c	2008-09-30 17:23:05.000000000 +0200
@@ -567,6 +567,9 @@ void
 comp_engine_theme_init(Wm *w)
 {
   Pixmap                        transPixmap, blackPixmap, lowlightPixmap, 
+#ifdef DRAKX_VERSION
+                                backgroundPixmap,
+#endif
                                 redPixmap;
   XRenderPictureAttributes	pa;
   XRenderColor                  c;
@@ -574,6 +577,9 @@ comp_engine_theme_init(Wm *w)
   Picture	                pics_to_free[] = { w->trans_picture,
 						   w->black_picture,
 						   w->lowlight_picture,
+#ifdef DRAKX_VERSION
+						   w->background_picture,
+#endif
 						   w->shadow_n_pic,
 						   w->shadow_e_pic,
 						   w->shadow_s_pic,
@@ -633,6 +639,29 @@ comp_engine_theme_init(Wm *w)
 
   XRenderFillRectangle (w->dpy, PictOpSrc, w->black_picture, &c, 0, 0, 1, 1);
 
+#ifdef DRAKX_VERSION
+
+/* background pixmap */
+
+  backgroundPixmap = XCreatePixmap (w->dpy, w->root, 1, 1, 32);
+
+  w->background_picture 
+    = XRenderCreatePicture (w->dpy, backgroundPixmap,
+			    XRenderFindStandardFormat (w->dpy, PictStandardARGB32),
+			    CPRepeat,
+			    &pa);
+
+  c.red   = 0x0000;
+  c.green = 0x0000;
+  c.blue  = 0x0000;
+
+  c.alpha = 0xffff;
+
+  XRenderFillRectangle (w->dpy, PictOpSrc, w->background_picture, &c, 0, 0, w->dpy_width, w->dpy_height);
+
+#endif
+
+
 #if DEBUG
   /* for visual composite debugging */
 
@@ -1132,7 +1161,11 @@ _render_a_client(Wm           *w, 
     }
 
   /* Render lowlight dialog modal for root - e.g lowlight everything */
-  if (lowlight_type == 2 && client->win_modal_blocker == None)
+  if (lowlight_type == 2 && client->win_modal_blocker == None
+#ifdef DRAKX_VERSION
+		  && !(client->type & MBCLIENT_TYPE_OVERRIDE)
+#endif
+		  )
     XRenderComposite (w->dpy, PictOpOver, w->lowlight_picture, None, 
 		      w->root_buffer,
 		      0, 0, 0, 0, x, y,
@@ -1249,11 +1282,13 @@ comp_engine_render(Wm *w, XserverRegion 
       /* Render block of boring black in case of no top app or desktop */
 
       XFixesSetPictureClipRegion (w->dpy, w->root_buffer, 0, 0, region);
-  
+#ifdef DRAKX_VERSION
+      XRenderComposite (w->dpy, PictOpSrc, w->background_picture, 
+#else
       XRenderComposite (w->dpy, PictOpSrc, w->black_picture, 
+#endif
 			None, w->root_buffer, 0, 0, 0, 0, 0, 0, 
 			w->dpy_width, w->dpy_height);
-      
       XFixesSetPictureClipRegion (w->dpy, w->root_buffer, 0, 0, None);
 
       client_top_app = w->stack_bottom;
diff -p -up matchbox-window-manager-1.2/src/dialog_client.c.drakx-version matchbox-window-manager-1.2/src/dialog_client.c
--- matchbox-window-manager-1.2/src/dialog_client.c.drakx-version	2007-04-12 18:38:11.000000000 +0200
+++ matchbox-window-manager-1.2/src/dialog_client.c	2008-09-25 18:21:38.000000000 +0200
@@ -85,6 +85,30 @@ dialog_client_get_offsets(Client *c, int
       return;
     }
 
+  if (c->flags & CLIENT_IS_MODAL_FLAG
+      && theme_has_frame_type_defined(c->wm->mbtheme, FRAME_MODAL))
+    {
+      *s = theme_frame_defined_height_get(c->wm->mbtheme, 
+				       FRAME_MODAL_SOUTH);
+      *e = theme_frame_defined_width_get(c->wm->mbtheme, 
+					 FRAME_MODAL_EAST );
+      *w = theme_frame_defined_width_get(c->wm->mbtheme, 
+					 FRAME_MODAL_WEST );
+      return;
+    }
+
+  if (c->flags & CLIENT_IS_MODAL_FLAG
+      && theme_has_frame_type_defined(c->wm->mbtheme, FRAME_MODAL))
+    {
+      *s = theme_frame_defined_height_get(c->wm->mbtheme, 
+				       FRAME_MODAL_SOUTH);
+      *e = theme_frame_defined_width_get(c->wm->mbtheme, 
+					 FRAME_MODAL_EAST );
+      *w = theme_frame_defined_width_get(c->wm->mbtheme, 
+					 FRAME_MODAL_WEST );
+      return;
+    }
+
    *s = theme_frame_defined_height_get(c->wm->mbtheme, 
 				       FRAME_DIALOG_SOUTH);
    *e = theme_frame_defined_width_get(c->wm->mbtheme, 
@@ -203,6 +227,18 @@ dialog_client_title_height(Client *c)
 	return theme_frame_defined_height_get(c->wm->mbtheme, FRAME_DIALOG_NORTH);
     }  
 
+  if (c->flags & CLIENT_IS_MODAL_FLAG
+      && theme_has_frame_type_defined(c->wm->mbtheme, FRAME_MODAL))
+  {
+	return theme_frame_defined_height_get(c->wm->mbtheme, FRAME_MODAL);
+  }
+
+  if (c->flags & CLIENT_IS_MODAL_FLAG
+      && theme_has_frame_type_defined(c->wm->mbtheme, FRAME_MODAL))
+  {
+	return theme_frame_defined_height_get(c->wm->mbtheme, FRAME_MODAL);
+  }
+
   return theme_frame_defined_height_get(c->wm->mbtheme, FRAME_DIALOG);
 }
 
@@ -428,7 +464,11 @@ dialog_client_reparent(Client *c)
 
    if (c->flags & CLIENT_IS_MODAL_FLAG
        && w->config->super_modal
+#ifndef DRAKX_VERSION
        && c->trans == NULL )	/* modal for device. XXX check recursive ? */
+#else
+       )
+#endif
      {
        /* Create an InputOnly fullscreen window to aid in making 
 	* modal dialogs *really* modal to the whole display by
@@ -834,6 +874,20 @@ dialog_client_redraw(Client *c, Bool use
       && theme_has_frame_type_defined(c->wm->mbtheme, FRAME_DIALOG_NORTH))
     frame_ref_top   = FRAME_DIALOG_NORTH;
 
+  if (c->flags & CLIENT_IS_MODAL_FLAG && theme_has_frame_type_defined(c->wm->mbtheme, FRAME_MODAL)) {
+      frame_ref_top   = FRAME_MODAL;
+      frame_ref_east  = FRAME_MODAL_EAST;
+      frame_ref_west  = FRAME_MODAL_WEST;
+      frame_ref_south = FRAME_MODAL_SOUTH;
+  }
+
+  if (c->flags & CLIENT_IS_MODAL_FLAG && theme_has_frame_type_defined(c->wm->mbtheme, FRAME_MODAL)) {
+      frame_ref_top   = FRAME_MODAL;
+      frame_ref_east  = FRAME_MODAL_EAST;
+      frame_ref_west  = FRAME_MODAL_WEST;
+      frame_ref_south = FRAME_MODAL_SOUTH;
+  }
+
   /* 'message dialogs have there own decorations */
   if (c->flags & CLIENT_HAS_URGENCY_FLAG
       && theme_has_message_decor(w->mbtheme))
@@ -1032,6 +1086,9 @@ dialog_client_button_press(Client *c, XB
 	/* Not on button */
 	if (w->config->dialog_stratergy == WM_DIALOGS_STRATERGY_STATIC)
 	  {
+#ifdef DRAKX_VERSION
+		  return;
+#endif
 	    /* For static undraggble/stack fixed dialog we simply  
 	     * hide the dialog when titlebar is clicked on. 
 	     *
diff -p -up matchbox-window-manager-1.2/src/structs.h.drakx-version matchbox-window-manager-1.2/src/structs.h
--- matchbox-window-manager-1.2/src/structs.h.drakx-version	2008-09-25 18:21:38.000000000 +0200
+++ matchbox-window-manager-1.2/src/structs.h	2008-09-25 18:55:34.000000000 +0200
@@ -83,19 +83,34 @@
 
 #ifdef MB_HAVE_PNG
 
-#define DEFAULT_THEME       DATADIR "/themes/Default/matchbox/theme.xml"
 
-#define DEFAULTTHEME       DATADIR "/themes/Default/matchbox/theme.xml"
+#ifdef DRAKX_VERSION
+#define DEFAULT_THEME       DATADIR "/themes/Ia Ora Smooth/matchbox/theme.xml"
 
-#define DEFAULT_THEMENAME  "Default"
+#define DEFAULTTHEME       DATADIR "/themes/Ia Ora Smooth/matchbox/theme.xml"
 
+#define DEFAULT_THEMENAME  "Ia Ora Smooth"
+
+#define DEFAULTTHEMENAME  "Ia Ora Smooth"
+#else
+#define DEFAULT_THEME       DATADIR "/themes/Default/matchbox/theme.xml"
+ 
+#define DEFAULTTHEME       DATADIR "/themes/Default/matchbox/theme.xml"
+ 
+#define DEFAULT_THEMENAME  "Default"
+ 
 #define DEFAULTTHEMENAME  "Default"
+#endif
 
 #else
 
+#ifdef DRAKX_VERSION
+#define DEFAULT_THEME       DATADIR "/themes/Ia Ora Smooth/matchbox/theme.xml"
+#define DEFAULT_THEME_NAME  "Ia Ora Smooth"
+#else
 #define DEFAULT_THEME       DATADIR "/themes/Default/matchbox/theme.xml"
 #define DEFAULT_THEME_NAME  "Default"
-
+#endif
 #endif
 
 #define CONFDEFAULTS       PKGDATADIR "/defaults"
@@ -643,6 +658,7 @@ typedef struct _wm
   Picture	    trans_picture;
   Picture	    black_picture;
   Picture	    lowlight_picture;
+  Picture	    background_picture;
 
 #ifdef DEBUG
   Picture           red_picture; /* for visual composite debugging */
diff -p -up matchbox-window-manager-1.2/src/wm.c.drakx-version matchbox-window-manager-1.2/src/wm.c
--- matchbox-window-manager-1.2/src/wm.c.drakx-version	2008-09-25 18:21:38.000000000 +0200
+++ matchbox-window-manager-1.2/src/wm.c	2008-09-25 18:21:38.000000000 +0200
@@ -319,7 +319,12 @@ wm_load_config (Wm   *w, 
    w->config->use_icons        = 16;
    w->config->no_cursor        = False;
    w->config->dialog_shade     = False;   
+#ifdef DRAKX_VERSION
+   w->config->dialog_stratergy = WM_DIALOGS_STRATERGY_STATIC;
+   w->config->super_modal      = True;
+#else
    w->config->dialog_stratergy = WM_DIALOGS_STRATERGY_CONSTRAINED;
+#endif
    w->config->ping_handler     = getenv("MB_HUNG_APP_HANDLER");
    w->config->ping_aggressive = getenv("MB_AGGRESSIVE_PING") ? True : False;