LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   Can't create custom menu.xml for openbox (https://www.linuxquestions.org/questions/linux-newbie-8/cant-create-custom-menu-xml-for-openbox-327803/)

LogicNZ 05-27-2005 04:53 PM

Can't create custom menu.xml for openbox
 
I've got Openbox 3 running on this old laptop and its performing well. I'm trying to make my own menu.xml file, but whenever I save the file to ~/.config/openbox/ and then restart OB, the right click menu doesn't even appear.

I'm running the latest ubuntu. My xml is as follows

Code:

<openbox_menu>
<menu id="Menu" label="Menu">
 <item label="Console">
  <action name="Execute"><execute>aterm</execute></action>
 </item>
 <item label="Console (root)">
  <action name="Execute"><execute>aterm -e su</execute></action>
 </item>
 <item label="Rox">
  <action name="Execute"><execute>rox</execute></action>
 </item>
 <separator/>
 <menu id="Nett" name="Net">
  <item label="Gaim">
  <action name="Execute"><execute>gaim</execute></action>
  </item>
  <item label="Firefox">
  <action name="Execute"><execute>firefox</execute></action>
  </item>
  <item label="X-Chat">
  <action name="Execute"><execute>xchat</execute></action>
  </item>
 </menu>
 <separator/>
 <menu id="Openboxx" label="Openbox">
  <item label="Configuration">
  <action name="Execute"><execute>obconf</execute></action>
  </item>
  <item label="Reload">
  <action name="Reconfigure" />
  </item>
  <item label="Restart">
  <action name="Restart" />
  </item>
  <item label="Logout">
  <action name="Exit" />
  </item>
 </menu>
</menu>
</openbox_menu>

Please help, thx :confused:

comprookie2000 05-27-2005 05:41 PM

You may need this at the begining;
<?xml version="1.0" encoding="UTF-8"?>

<openbox_menu xmlns="http://openbox.org/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://openbox.org/
file:///usr/share/openbox/menu.xsd">
or something like it,I don't use Ubuntu,good luck

LogicNZ 05-27-2005 05:54 PM

Thanks comprookie2000

I added that and saved as menu.xml

Now the menu comes up when I right click, but its still the default openbox menu, so its not reading menu.xml.

Any other suggestions?

comprookie2000 05-27-2005 06:07 PM

Did you copy the system config to $HOME/.config/openbox/
Check this out;
http://icculus.org/openbox/docs.php

LogicNZ 05-27-2005 06:11 PM

Is that rc.xml? If so, thats there.

Code:

<?xml version="1.0" encoding="UTF-8"?>
<!-- Do not edit this file, it will be overwritten on install.
        Copy the file to $HOME/.config/openbox/ instead. -->
<openbox_config xmlns="http://openbox.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://openbox.org/                file:///usr/share/openbox/rc.xsd">

<resistance>
  <strength>10</strength>
  <screen_edge_strength>20</screen_edge_strength>
</resistance>

<focus>
  <focusNew>yes</focusNew>
  <followMouse>no</followMouse>
  <focusLast>no</focusLast>
  <focusDelay>0</focusDelay>
  <raiseOnFocus>no</raiseOnFocus>
</focus>

<theme>
  <name>thebear</name>
  <titlelayout>NLIMC</titlelayout>
</theme>

<placement>
  <policy>Smart</policy>
</placement>

<desktops>
  <number>2</number>
  <firstdesk>1</firstdesk>
  <names><name>tux</name><name>xut</name><name>three</name><name>four</name></names>
</desktops>

<resize>
  <drawContents>yes</drawContents>
</resize>

<dock>
  <position>TopLeft</position>
  <stacking>Top</stacking>
  <direction>Vertical</direction>
  <floatingX>0</floatingX>
  <floatingY>0</floatingY>
  <autoHide>no</autoHide>
  <hideDelay>300</hideDelay>
  <moveButton>A-Left</moveButton>
</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>
  <keybind key="C-A-Left">
    <action name="DesktopLeft"><wrap>no</wrap></action>
  </keybind>
  <keybind key="C-A-Right">
    <action name="DesktopRight"><wrap>no</wrap></action>
  </keybind>
  <keybind key="C-A-Up">
    <action name="DesktopUp"><wrap>no</wrap></action>
  </keybind>
  <keybind key="C-A-Down">
    <action name="DesktopDown"><wrap>no</wrap></action>
  </keybind>
  <keybind key="S-A-Left">
    <action name="SendToDesktopLeft"><wrap>no</wrap></action>
  </keybind>
  <keybind key="S-A-Right">
    <action name="SendToDesktopRight"><wrap>no</wrap></action>
  </keybind>
  <keybind key="S-A-Up">
    <action name="SendToDesktopUp"><wrap>no</wrap></action>
  </keybind>
  <keybind key="S-A-Down">
    <action name="SendToDesktopDown"><wrap>no</wrap></action>
  </keybind>
  <keybind key="C-A-d">
    <action name="ToggleShowDesktop"/>
  </keybind>
  <keybind key="A-F4">
    <action name="Close"/>
  </keybind>
  <keybind key="A-Tab">
    <action name="NextWindow"/>
  </keybind>
  <keybind key="A-S-Tab">
    <action name="PreviousWindow"/>
  </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>
  </keybind>
</keyboard>

<mouse>
  <dragThreshold>3</dragThreshold>
  <doubleClickTime>200</doubleClickTime>

  <context name="Frame">
    <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>
    <mousebind button="A-Middle" action="Drag">
      <action name="Resize"/>
    </mousebind>
    <mousebind button="A-Middle" action="Click">
      <action name="Lower"/>
    </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">
      <action name="SendToDesktopPrevious"/>
    </mousebind>
    <mousebind button="C-A-Down" action="Click">
      <action name="SendToDesktopNext"/>
    </mousebind>
  </context>
  <context name="Titlebar">
    <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"/>
    </mousebind>
    <mousebind button="Middle" action="Press">
      <action name="Lower"/>
    </mousebind>
    <mousebind button="Up" action="Click">
      <action name="Shade"/>
    </mousebind>
    <mousebind button="Down" action="Click">
      <action name="Unshade"/>
    </mousebind>
    <mousebind button="Right" action="Press">
      <action name="ShowMenu"><menu>client-menu</menu></action>
    </mousebind>
  </context>
  <context name="Handle">
    <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="Middle" action="Press">
      <action name="Lower"/>
    </mousebind>
  </context>
  <context name="BLCorner">
    <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="Drag">
      <action name="Resize"/>
    </mousebind>
    <mousebind button="Left" action="Press">
      <action name="Focus"/>
    </mousebind>
  </context>
  <context name="TLCorner">
    <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="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"/>
    </mousebind>
    <mousebind button="Middle" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Right" action="Press">
      <action name="Focus"/>
    </mousebind>
  </context>
  <context name="Icon">
    <mousebind button="Left" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Right" action="Press">
      <action name="ShowMenu"><menu>client-menu</menu></action>
    </mousebind>
    <mousebind button="Left" action="Press">
      <action name="ShowMenu"><menu>client-menu</menu></action>
    </mousebind>
  </context>
  <context name="AllDesktops">
    <mousebind button="Left" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Left" action="Click">
      <action name="ToggleOmnipresent"/>
    </mousebind>
  </context>
  <context name="Shade">
    <mousebind button="Left" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Left" action="Click">
      <action name="ToggleShade"/>
    </mousebind>
  </context>
  <context name="Iconify">
    <mousebind button="Left" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Left" action="Click">
      <action name="Iconify"/>
    </mousebind>
  </context>
  <context name="Maximize">
    <mousebind button="Left" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Middle" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Right" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Left" action="Click">
      <action name="ToggleMaximizeFull"/>
    </mousebind>
    <mousebind button="Middle" action="Click">
      <action name="ToggleMaximizeVert"/>
    </mousebind>
    <mousebind button="Right" action="Click">
      <action name="ToggleMaximizeHorz"/>
    </mousebind>
  </context>
  <context name="Close">
    <mousebind button="Left" action="Press">
      <action name="Focus"/>
    </mousebind>
    <mousebind button="Left" action="Click">
      <action name="Close"/>
    </mousebind>
  </context>
  <context name="Desktop">
    <mousebind button="Up" action="Press">
      <action name="DesktopPrevious"/>
    </mousebind>
    <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>
    <mousebind button="Middle" action="Press">
      <action name="ShowMenu"><menu>client-list-menu</menu></action>
    </mousebind>
    <mousebind button="Right" action="Press">
      <action name="ShowMenu"><menu>root-menu</menu></action>
    </mousebind>
  </context>
  <context name="MoveResize">
    <mousebind button="Up" action="Press">
      <action name="DesktopPrevious"/>
    </mousebind>
    <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>
  </context>
</mouse>

<menu>
  <!-- You can specify more than one menu file in here and they are all loaded,
      just don't make menu ids clash or, well, it'll be kind of pointless -->

  <!-- system menu files on Debian systems -->
  <file>/var/lib/openbox/debian-menu.xml</file>
  <file>debian-menu.xml</file>

  <!-- default menu file (or custom one in $HOME/.config/openbox/) -->
  <file>menu.xml</file>
</menu>

</openbox_config>


comprookie2000 05-27-2005 06:24 PM

Not sure but you can try to comment this out and see what happens;
#<file>/var/lib/openbox/debian-menu.xml</file>
#<file>debian-menu.xml</file>
if it doesn't work ,just uncomment it and we will look some more and read those doc's may have missed something...

Count Zero 07-19-2008 10:37 AM

I stumbled on this old thread when I was googling for a solution to the same problem. Thought I'd just post the solution to my problem (I'm almost 100% certain that the OP had the same problem) for anyone else who might google up this thread.

In the menu.xml file (at the beginning of the file) there is something called "id" and one should enter something here to define "id". This should be a unique identifier.

In the rc.xml file (the main configuration file for openbox) there is an action called "show menu" and this should contain the unique identifier specified in "id". If it does not it will not show the menu (as ob interprets it to be the wrong menu).

The default files of course refers to each other so a default rc.xml gives you a default menu.xml.

/CZ


All times are GMT -5. The time now is 11:49 PM.