File: STATUS

package info (click to toggle)
libxfce4menu 4.6.2-1
  • links: PTS, VCS
  • area: main
  • in suites: squeeze, wheezy
  • size: 2,884 kB
  • ctags: 1,379
  • sloc: sh: 10,305; ansic: 8,371; makefile: 226
file content (192 lines) | stat: -rw-r--r-- 3,915 bytes parent folder | download
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
XDG menu specificatiom implementation status
=======================================================================

   I. Supported menu file elements
  II. Test suite results
 III. Filesystem monitoring
  IV. UI interaction



I. Supported menu file elements
===============================

  [x] <Menu>                    

  [x] <AppDir>                 

  [x] <DefaultAppDirs>

  [x] <DirectoryDir>

  [x] <DefaultDirectoryDirs>

  [x] <Name>

  [x] <Directory>

  [x] <OnlyUnallocated> and <NotOnlyUnallocated>

        Supported by using a two-pass resolving mechanism as stated
        in the spec ("Generating the menus").
  
  [x] <Deleted> and <NotDeleted>

  [x] <Include> 

        Recursion scheme (only recurse on and/or/not elements):

           and|or|not
             and|or|not
               and|or|not
                 ...
             category|filename
           category|filename

  [x] <Exclude>

  [x] <Filename>

  [x] <Category>

  [x] <All>

  [x] <And>

  [x] <Or>

  [x] <Not>

  [ ] <MergeFile>

  [ ] <MergeDir>

  [ ] <DefaultMergeDirs>

  [-] <LegacyDir>
      
        <LegacyDir> elements are parsed and added to the menus 
        which contain them in the menu file. Legacy menus are created
        for legacy dirs with a .directory file. However, their desktop
        files are not parsed yet.

  [-] <DefaultLegacyDirs>
    
        See <LegacyDir>

  [-] <KDELegacyDirs>

        See <LegacyDir>

  [-] <Move>

        <Move> elements are parsed and functions for applying them
        do exist. They are incomplete though: they only rename
        menus if the <New> menu does not exist. Merging is not done
        yet.

  [-] <Old>

        See <Move>

  [-] <New>

        See <Move>

  [x] <Layout>

  [ ] <DefaultLayout>

  [-] <Menuname>

        The <Menuname> element is parsed and applied, but XML 
        attributes like show_empty, inline, inline_limit etc. are not
        handled.

  [x] <Separator>

  [x] <Merge>



II. Test suite results
======================

  The script tests/test-menu-spec makes it possible to test our 
  implementation with the freedesktop.org menu specification test suite:

    http://webcvs.freedesktop.org/menus/menu-spec/tests/

  Passed tests:

    * All
    * And
    * AppDir-relative
    * boolean-logic
    * Category
    * Deleted
    * desktop-name-collision
    * DesktopFileID
    * DirectoryDir-relative
    * Directory
    * Exclude
    * Filename
    * menu-multiple-matching
    * Merge-combined
    * NoDisplay
    * NoDisplay2
    * NotOnlyUnallocated-default
    * official-categories
    * OnlyUnallocated
    * Or
    * submenu-collision

  Failed tests:

    * AppDir (test suite bug, missing result file)
    * DefaultMergeDirs
    * DirectoryDir (test suite bug, missing result file)
    * LegacyDir-Move
    * LegacyDir-relative
    * MergeDir-absolute
    * MergeDir-relative
    * MergeFile2
    * MergeFile3
    * MergeFile-absolute
    * MergeFile-parent
    * MergeFile-path
    * MergeFile-recursive
    * MergeFile-relative
    * Move-collapsing
    * Move-ordering
    * Move-submenu
    * Move (unverified test suite bug)

  A list of test suite bugs I found during testing can be found here:

    http://lunar-linux.org/~jannis/menu-spec-testsuite.txt



III. Filesystem monitoring
==========================

  Filesystem monitoring is done by moving the actual work into the 
  client application. Using XfceMenuMonitorVTable applications can
  register functions to be called when monitoring of a file or 
  directory is needed. They then have to care about monitoring 
  themselves (see xfce-menu-monitor.{c,h} for details.



IV. UI interaction
==================

  Using GObject signals it should be easy to connect to menus and
  menu items in order to update the related widgets.



Written by Jannis Pohlmann <jannis@xfce.org>.

$Id: STATUS 25194 2007-03-18 15:16:39Z jannis $