File: freedesktop-menu.patch

package info (click to toggle)
awesome 4.3-8
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 6,460 kB
  • sloc: ansic: 14,508; sh: 526; makefile: 46
file content (45 lines) | stat: -rw-r--r-- 1,444 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
Author: Reiner Herrmann <reiner@reiner-h.de>
Description: Use freedesktop menu if module is available
 awesome-freedesktop is included in awesome-extra package
Bug-Debian: https://bugs.debian.org/693135

--- a/awesomerc.lua
+++ b/awesomerc.lua
@@ -21,6 +21,7 @@
 
 -- Load Debian menu entries
 local debian = require("debian.menu")
+local has_fdo, freedesktop = pcall(require, "freedesktop")
 
 -- {{{ Error handling
 -- @DOC_ERROR_HANDLING@
@@ -99,11 +100,24 @@
    { "quit", function() awesome.quit() end },
 }
 
-mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon },
-                                    { "Debian", debian.menu.Debian_menu.Debian },
-                                    { "open terminal", terminal }
-                                  }
-                        })
+local menu_awesome = { "awesome", myawesomemenu, beautiful.awesome_icon }
+local menu_terminal = { "open terminal", terminal }
+
+if has_fdo then
+    mymainmenu = freedesktop.menu.build({
+        before = { menu_awesome },
+        after =  { menu_terminal }
+    })
+else
+    mymainmenu = awful.menu({
+        items = {
+                  menu_awesome,
+                  { "Debian", debian.menu.Debian_menu.Debian },
+                  menu_terminal,
+                }
+    })
+end
+
 
 mylauncher = awful.widget.launcher({ image = beautiful.awesome_icon,
                                      menu = mymainmenu })