merge r6470-6478 from trunk
authorDana Jansens <danakj@orodu.net>
Sun, 13 May 2007 21:58:04 +0000 (21:58 +0000)
committerDana Jansens <danakj@orodu.net>
Sun, 13 May 2007 21:58:04 +0000 (21:58 +0000)
Makefile.am
data/rc.xml
openbox/client.c
openbox/dock.c
openbox/focus.c
openbox/screen.c

index ea29454d7aafaa6057dd44eac051784543a345dc..631207940bfec4226cfb075190f77b128719d73e 100644 (file)
@@ -349,7 +349,7 @@ edit = $(SED) \
        -e 's!@configdir\@!$(configdir)!' \
        -e 's!@bindir\@!$(bindir)!'
 
-data/xsession/openbox-gnome-session: Makefile data \
+data/xsession/openbox-gnome-session: Makefile \
                $(srcdir)/data/xsession/openbox-gnome-session.in
        @echo make: creating $@
        @mkdir data 2>/dev/null || true
@@ -357,7 +357,7 @@ data/xsession/openbox-gnome-session: Makefile data \
        @$(edit) $(srcdir)/data/xsession/openbox-gnome-session.in >$@
        @chmod a+x $@
 
-data/xsession/openbox-kde-session: Makefile data \
+data/xsession/openbox-kde-session: Makefile \
                $(srcdir)/data/xsession/openbox-kde-session.in
        @echo make: creating $@
        @mkdir data 2>/dev/null || true
@@ -365,25 +365,25 @@ data/xsession/openbox-kde-session: Makefile data \
        @$(edit) $(srcdir)/data/xsession/openbox-kde-session.in >$@
        @chmod a+x $@
 
-doc/openbox.1.in: Makefile doc $(srcdir)/doc/openbox.1.sgml
+doc/openbox.1.in: Makefile $(srcdir)/doc/openbox.1.sgml
        @echo make: creating $@
        @mkdir doc 2>/dev/null || true
-       docbook-to-man $(srcdir)/doc/openbox.1.sgml > $@
+       @docbook-to-man $(srcdir)/doc/openbox.1.sgml > $@
 
-doc/openbox.1: Makefile doc doc/openbox.1.in
+doc/openbox.1: Makefile doc/openbox.1.in
        @echo make: creating $@
        @mkdir doc 2>/dev/null || true
        @$(edit) $(srcdir)/doc/openbox.1.in >$@
 
-doc/openbox-gnome-session.1: Makefile doc doc/openbox-gnome-session.1.sgml
+doc/openbox-gnome-session.1: Makefile doc/openbox-gnome-session.1.sgml
        @echo make: creating $@
        @mkdir doc 2>/dev/null || true
-       docbook-to-man $(srcdir)/doc/openbox-gnome-session.1.sgml > $@
+       @docbook-to-man $(srcdir)/doc/openbox-gnome-session.1.sgml > $@
 
-doc/openbox-kde-session.1: Makefile doc doc/openbox-kde-session.1.sgml
+doc/openbox-kde-session.1: Makefile doc/openbox-kde-session.1.sgml
        @echo make: creating $@
        @mkdir doc 2>/dev/null || true
-       docbook-to-man $(srcdir)/doc/openbox-kde-session.1.sgml > $@
+       @docbook-to-man $(srcdir)/doc/openbox-kde-session.1.sgml > $@
 
 dist_gnomewmfiles_DATA = \
        data/gnome-wm-properties/openbox.desktop
index 47e6206e4e62aba9dd16b53f7f60f1665df19b9e..78185786caa1036e27f80e198314a4ed33514b40 100644 (file)
@@ -12,7 +12,7 @@
 
 <focus>
   <focusNew>yes</focusNew>
-  <focusLast>no</focusLast>
+  <focusLast>yes</focusLast>
   <followMouse>no</followMouse>
   <focusDelay>200</focusDelay>
   <raiseOnFocus>no</raiseOnFocus>
@@ -41,7 +41,7 @@
   <animateIconify>yes</animateIconify>
   <font place="ActiveWindow">
     <name>sans</name>
-    <size>7</size>
+    <size>8</size>
     <!-- font size in points -->
     <weight>bold</weight>
     <!-- 'bold' or 'normal' -->
@@ -50,7 +50,7 @@
   </font>
   <font place="InactiveWindow">
     <name>sans</name>
-    <size>7</size>
+    <size>8</size>
     <!-- font size in points -->
     <weight>bold</weight>
     <!-- 'bold' or 'normal' -->
@@ -59,9 +59,9 @@
   </font>
   <font place="MenuHeader">
     <name>sans</name>
-    <size>8</size>
+    <size>9</size>
     <!-- font size in points -->
-    <weight>bold</weight>
+    <weight>normal</weight>
     <!-- 'bold' or 'normal' -->
     <slant>normal</slant>
     <!-- 'italic' or 'normal' -->
@@ -70,7 +70,7 @@
     <name>sans</name>
     <size>9</size>
     <!-- font size in points -->
-    <weight>bold</weight>
+    <weight>normal</weight>
     <!-- 'bold' or 'normal' -->
     <slant>normal</slant>
     <!-- 'italic' or 'normal' -->
   <!-- 'Vertical' or 'Horizontal' -->
   <autoHide>no</autoHide>
   <hideDelay>300</hideDelay>
+  <!-- in milliseconds (1000 = 1 second) -->
   <showDelay>300</showDelay>
+  <!-- in milliseconds (1000 = 1 second) -->
   <moveButton>Middle</moveButton>
+  <!-- 'Left', 'Middle', 'Right' -->
 </dock>
 
 <keyboard>
   <chainQuitKey>C-g</chainQuitKey>
 
-  <keybind key="A-F10">
-    <action name="MaximizeFull"/>
-  </keybind>
-  <keybind key="A-F5">
-    <action name="UnmaximizeFull"/>
-  </keybind>
-  <keybind key="A-F12">
-    <action name="ToggleShade"/>
-  </keybind>
+  <!-- Keybindings for desktop switching -->
   <keybind key="C-A-Left">
     <action name="DesktopLeft"><wrap>no</wrap></action>
   </keybind>
   <keybind key="S-A-Down">
     <action name="SendToDesktopDown"><wrap>no</wrap></action>
   </keybind>
-  <keybind key="C-A-d">
+  <keybind key="W-F1">
+    <action name="Desktop"><desktop>1</desktop></action>
+  </keybind>
+  <keybind key="W-F2">
+    <action name="Desktop"><desktop>1</desktop></action>
+  </keybind>
+  <keybind key="W-F3">
+    <action name="Desktop"><desktop>1</desktop></action>
+  </keybind>
+  <keybind key="W-F4">
+    <action name="Desktop"><desktop>1</desktop></action>
+  </keybind>
+  <keybind key="W-d">
     <action name="ToggleShowDesktop"/>
   </keybind>
+
+  <!-- Keybindings for windows -->
   <keybind key="A-F4">
     <action name="Close"/>
   </keybind>
+  <keybind key="A-Escape">
+    <action name="Lower"/>
+    <action name="FocusToBottom"/>
+    <action name="Unfocus"/>
+  </keybind>
+  <keybind key="A-space">
+    <action name="ShowMenu"><menu>client-menu</menu></action>
+  </keybind>
+
+  <!-- Keybindings for window switching -->
   <keybind key="A-Tab">
     <action name="NextWindow"/>
   </keybind>
     <action name="PreviousWindow"/>
   </keybind>
   <keybind key="C-A-Tab">
-    <action name="NextWindow"><panels>yes</panels></action>
-  </keybind>
-  <keybind key="C-A-S-Tab">
-    <action name="PreviousWindow"><panels>yes</panels></action>
+    <action name="NextWindow">
+      <panels>yes</panels><desktop>yes</desktop>
+    </action>
   </keybind>
-  <keybind key="A-F7">
-    <action name="Move"/>
-  </keybind>
-  <keybind key="A-F8">
-    <action name="Resize"/>
-  </keybind>
-  <keybind key="A-F9">
-    <action name="Iconify"/>
-  </keybind>
-  <keybind key="A-space">
-    <action name="ShowMenu"><menu>client-menu</menu></action>
+
+  <!-- Keybindings for running applications -->
+  <keybind key="W-e">
+    <action name="Execute">
+      <startupnotify>
+        <enabled>true</enabled>
+        <name>Konqueror</name>
+      </startupnotify>
+      <execute>kfmclient openProfile filemanagement</execute>
+    </action>
   </keybind>
 </keyboard>
 
 <mouse>
   <dragThreshold>3</dragThreshold>
+  <!-- number of pixels the mouse must move before a drag begins -->
   <doubleClickTime>200</doubleClickTime>
+  <!-- in milliseconds (1000 = 1 second) -->
 
   <context name="Frame">
+    <mousebind button="A-Left" action="Press">
+      <action name="Activate"/>
+    </mousebind>
     <mousebind button="A-Left" action="Drag">
       <action name="Move"/>
     </mousebind>
-    <mousebind button="A-Left" action="Click">
-      <action name="Raise"/>
-    </mousebind>
-    <mousebind button="A-Left" action="Press">
-      <action name="Focus"/>
+
+    <mousebind button="A-Right" action="Press">
+      <action name="Activate"/>
     </mousebind>
-    <mousebind button="A-Middle" action="Drag">
+    <mousebind button="A-Right" action="Drag">
       <action name="Resize"/>
     </mousebind> 
+
     <mousebind button="A-Middle" action="Click">
       <action name="Lower"/>
+      <action name="FocusToBottom"/>
+      <action name="Unfocus"/>
     </mousebind>
-    <mousebind button="A-Right" action="Press">
-      <action name="ShowMenu"><menu>client-menu</menu></action>
-    </mousebind>
+
     <mousebind button="A-Up" action="Click">
       <action name="DesktopPrevious"/>
     </mousebind>
     <mousebind button="A-Down" action="Click">
       <action name="DesktopNext"/>
     </mousebind>
-    <mousebind button="C-A-Up" action="Click">
+    <mousebind button="A-S-Up" action="Click">
       <action name="SendToDesktopPrevious"/>
     </mousebind>
-    <mousebind button="C-A-Down" action="Click">
+    <mousebind button="A-S-Down" action="Click">
       <action name="SendToDesktopNext"/>
     </mousebind>
   </context>
+
   <context name="Titlebar">
+    <mousebind button="Left" action="Press">
+      <action name="Activate"/>
+    </mousebind>
     <mousebind button="Left" action="Drag">
       <action name="Move"/>
     </mousebind>
-    <mousebind button="Left" action="Click">
-      <action name="Raise"/>
-    </mousebind>
-    <mousebind button="Left" action="Press">
-      <action name="Focus"/>
-    </mousebind>
     <mousebind button="Left" action="DoubleClick">
-      <action name="ToggleShade"/>
+      <action name="ToggleMaximizeFull"/>
     </mousebind>
+
     <mousebind button="Middle" action="Press">
       <action name="Lower"/>
+      <action name="FocusToBottom"/>
+      <action name="Unfocus"/>
     </mousebind>
+
     <mousebind button="Up" action="Click">
       <action name="Shade"/>
+      <action name="FocusToBottom"/>
+      <action name="Unfocus"/>
     </mousebind>
     <mousebind button="Down" action="Click">
       <action name="Unshade"/>
     </mousebind>
+
     <mousebind button="Right" action="Press">
+      <action name="Activate"/>
       <action name="ShowMenu"><menu>client-menu</menu></action>
     </mousebind>
   </context>
+
   <context name="Top">
+    <mousebind button="Left" action="Press">
+      <action name="Activate"/>
+    </mousebind>
     <mousebind button="Left" action="Drag">
       <action name="Resize"><edge>top</edge></action>
     </mousebind>
+  </context>
+
+  <context name="Handle">
     <mousebind button="Left" action="Press">
       <action name="Activate"/>
     </mousebind>
-  </context>
-  <context name="Handle">
     <mousebind button="Left" action="Drag">
       <action name="Resize"><edge>bottom</edge></action>
     </mousebind>
-    <mousebind button="Left" action="Press">
+
+    <mousebind button="Middle" action="Press">
+      <action name="Lower"/>
+      <action name="FocusToBottom"/>
+      <action name="Unfocus"/>
+    </mousebind>
+
+    <mousebind button="Right" action="Press">
       <action name="Activate"/>
+      <action name="ShowMenu"><menu>client-menu</menu></action>
     </mousebind>
   </context>
+
   <context name="BLCorner">
+    <mousebind button="Left" action="Press">
+      <action name="Activate"/>
+    </mousebind>
     <mousebind button="Left" action="Drag">
       <action name="Resize"/>
     </mousebind>
-    <mousebind button="Left" action="Press">
-      <action name="Focus"/>
-    </mousebind>
   </context>
+
   <context name="BRCorner">
+    <mousebind button="Left" action="Press">
+      <action name="Activate"/>
+    </mousebind>
     <mousebind button="Left" action="Drag">
       <action name="Resize"/>
     </mousebind>
-    <mousebind button="Left" action="Press">
-      <action name="Focus"/>
-    </mousebind>
   </context>
+
   <context name="TLCorner">
+    <mousebind button="Left" action="Press">
+      <action name="Activate"/>
+    </mousebind>
     <mousebind button="Left" action="Drag">
       <action name="Resize"/>
     </mousebind>
-    <mousebind button="Left" action="Press">
-      <action name="Focus"/>
-    </mousebind>
   </context>
+
   <context name="TRCorner">
+    <mousebind button="Left" action="Press">
+      <action name="Activate"/>
+    </mousebind>
     <mousebind button="Left" action="Drag">
       <action name="Resize"/>
     </mousebind>
-    <mousebind button="Left" action="Press">
-      <action name="Focus"/>
-    </mousebind>
   </context>
+
   <context name="Client">
     <mousebind button="Left" action="Press">
-      <action name="Focus"/>
-      <action name="Raise"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Middle" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Right" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
   </context>
+
   <context name="Icon">
     <mousebind button="Left" action="Press">
-      <action name="Focus"/>
-    </mousebind>
-    <mousebind button="Right" action="Press">
+      <action name="Activate"/>
       <action name="ShowMenu"><menu>client-menu</menu></action>
     </mousebind>
-    <mousebind button="Left" action="Press">
+    <mousebind button="Right" action="Press">
+      <action name="Activate"/>
       <action name="ShowMenu"><menu>client-menu</menu></action>
     </mousebind>
   </context>
+
   <context name="AllDesktops">
     <mousebind button="Left" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Left" action="Click">
       <action name="ToggleOmnipresent"/>
     </mousebind>
   </context>
+
   <context name="Shade">
     <mousebind button="Left" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Left" action="Click">
       <action name="ToggleShade"/>
     </mousebind>
   </context>
+
   <context name="Iconify">
     <mousebind button="Left" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Left" action="Click">
       <action name="Iconify"/>
     </mousebind>
   </context>
+
   <context name="Maximize">
     <mousebind button="Left" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Middle" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Right" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Left" action="Click">
       <action name="ToggleMaximizeFull"/>
       <action name="ToggleMaximizeHorz"/>
     </mousebind>
   </context>
+
   <context name="Close">
     <mousebind button="Left" action="Press">
-      <action name="Focus"/>
+      <action name="Activate"/>
     </mousebind>
     <mousebind button="Left" action="Click">
       <action name="Close"/>
     </mousebind>
   </context>
+
   <context name="Desktop">
     <mousebind button="Up" action="Press">
       <action name="DesktopPrevious"/>
     <mousebind button="Down" action="Press">
       <action name="DesktopNext"/>
     </mousebind>
+
     <mousebind button="A-Up" action="Press">
       <action name="DesktopPrevious"/>
     </mousebind>
     <mousebind button="A-Down" action="Press">
       <action name="DesktopNext"/>
     </mousebind>
+
     <mousebind button="Left" action="Press">
-      <action name="Focus"/>
-      <action name="Raise"/>
-    </mousebind> 
+      <action name="Activate"/>
+    </mousebind>
+
+    <!-- Menus -->
     <mousebind button="Middle" action="Press">
       <action name="ShowMenu"><menu>client-list-combined-menu</menu></action>
     </mousebind> 
       <action name="ShowMenu"><menu>root-menu</menu></action>
     </mousebind>
   </context>
+
   <context name="MoveResize">
     <mousebind button="Up" action="Press">
       <action name="DesktopPrevious"/>
 
   <!-- default menu file (or custom one in $HOME/.config/openbox/) -->
   <file>menu.xml</file>
-  <hideDelay>250</hideDelay>
+  <hideDelay>200</hideDelay>
   <middle>no</middle>
-  <submenuShowDelay>0</submenuShowDelay>
+  <submenuShowDelay>100</submenuShowDelay>
   <applicationIcons>yes</applicationIcons>
 </menu>
 
index 39bd94d5e530917a8eb056fc8c33da2eca73fded..3d6ae529571be2db2bcce58792b4ea5d38daf24a 100644 (file)
@@ -3746,8 +3746,6 @@ ObClient *client_search_transient(ObClient *self, ObClient *search)
             if(screen_desktop != cur->desktop && cur->desktop != DESKTOP_ALL) \
                 continue;                                                     \
             if(cur->iconic)                                                   \
-                continue;                                                     \
-            if(cur->layer == c->layer)                                        \
                 continue;
 
 #define HIT_EDGE(my_edge_start, my_edge_end, his_edge_start, his_edge_end) \
index 697261e202dfc9e4fbd6e4203558fa92cf0147e0..ae42ab9d2eb020b85536b409fb3bb77b35f7f9de 100644 (file)
@@ -414,7 +414,8 @@ void dock_configure()
     if (!dock->dock_apps) {
         STRUT_PARTIAL_SET(dock_strut, 0, 0, 0, 0,
                           0, 0, 0, 0, 0, 0, 0, 0);
-    } else if (config_dock_floating || config_dock_nostrut) {
+    } else if (config_dock_floating || config_dock_nostrut)
+    {
         STRUT_PARTIAL_SET(dock_strut, 0, 0, 0, 0,
                           0, 0, 0, 0, 0, 0, 0, 0);
     } else {
index 72588a30a958b0bcacafbbc472d57565d3d9e25a..f947fe33fd5f8e587acfdbd8a4eac890dc15bcb6 100644 (file)
@@ -302,7 +302,13 @@ void focus_nothing()
         screen_install_colormap(NULL, TRUE);
     }
 
+    /* Don't set focus_client to NULL here. It will be set to NULL when the
+       FocusOut event comes. Otherwise, if we focus nothing and then focus the
+       same window again, The focus code says nothing changed, but focus_client
+       ends up being NULL anyways.
     focus_client = NULL;
+    */
+
     focus_tried = NULL; /* focus isn't "trying" to go anywhere now */
 
     /* if there is a grab going on, then we need to cancel it. if we move
index 1cbb2a5ec2ecceb765442b593dab7ad14d24b428..97fa88494b8fe28b8b1c39c73952c6044a893f20 100644 (file)
@@ -663,7 +663,7 @@ guint screen_cycle_desktop(ObDirection dir, gboolean wrap, gboolean linear,
 {
     guint r, c;
     static guint d = (guint)-1;
-    guint ret;
+    guint ret, oldd;
 
     if (d == (guint)-1)
         d = screen_desktop;
@@ -671,6 +671,7 @@ guint screen_cycle_desktop(ObDirection dir, gboolean wrap, gboolean linear,
     if ((cancel || done) && dialog)
         goto show_cycle_dialog;
 
+    oldd = d;
     get_row_col(d, &r, &c);
 
     if (linear) {
@@ -696,19 +697,17 @@ guint screen_cycle_desktop(ObDirection dir, gboolean wrap, gboolean linear,
         case OB_DIRECTION_EAST:
             ++c;
             if (c >= screen_desktop_layout.columns) {
-                if (wrap) {
+                if (wrap)
                     c = 0;
-                } else {
-                    d = screen_desktop;
+                else
                     goto show_cycle_dialog;
-                }
             }
             d = translate_row_col(r, c);
             if (d >= screen_num_desktops) {
                 if (wrap) {
                     ++c;
                 } else {
-                    d = screen_desktop;
+                    d = oldd;
                     goto show_cycle_dialog;
                 }
             }
@@ -716,19 +715,17 @@ guint screen_cycle_desktop(ObDirection dir, gboolean wrap, gboolean linear,
         case OB_DIRECTION_WEST:
             --c;
             if (c >= screen_desktop_layout.columns) {
-                if (wrap) {
+                if (wrap)
                     c = screen_desktop_layout.columns - 1;
-                } else {
-                    d = screen_desktop;
+                else
                     goto show_cycle_dialog;
-                }
             }
             d = translate_row_col(r, c);
             if (d >= screen_num_desktops) {
                 if (wrap) {
                     --c;
                 } else {
-                    d = screen_desktop;
+                    d = oldd;
                     goto show_cycle_dialog;
                 }
             }
@@ -736,19 +733,17 @@ guint screen_cycle_desktop(ObDirection dir, gboolean wrap, gboolean linear,
         case OB_DIRECTION_SOUTH:
             ++r;
             if (r >= screen_desktop_layout.rows) {
-                if (wrap) {
+                if (wrap)
                     r = 0;
-                } else {
-                    d = screen_desktop;
+                else
                     goto show_cycle_dialog;
-                }
             }
             d = translate_row_col(r, c);
             if (d >= screen_num_desktops) {
                 if (wrap) {
                     ++r;
                 } else {
-                    d = screen_desktop;
+                    d = oldd;
                     goto show_cycle_dialog;
                 }
             }
@@ -756,19 +751,17 @@ guint screen_cycle_desktop(ObDirection dir, gboolean wrap, gboolean linear,
         case OB_DIRECTION_NORTH:
             --r;
             if (r >= screen_desktop_layout.rows) {
-                if (wrap) {
+                if (wrap)
                     r = screen_desktop_layout.rows - 1;
-                } else {
-                    d = screen_desktop;
+                else
                     goto show_cycle_dialog;
-                }
             }
             d = translate_row_col(r, c);
             if (d >= screen_num_desktops) {
                 if (wrap) {
                     --r;
                 } else {
-                    d = screen_desktop;
+                    d = oldd;
                     goto show_cycle_dialog;
                 }
             }