summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorDavid Walter Seikel <onefang@gmail.com>2006-09-07 06:12:45 +0000
committerDavid Walter Seikel <onefang@gmail.com>2006-09-07 06:12:45 +0000
commitbe9dd395e14d8e6cc0976a5cd8e951c5b92aa85f (patch)
tree8f9de8ace28d75016a56794fc3cb84ee457af57b /doc
parentba23d3535dc60eb4d31a7d1ea1e4fdcee09d4a81 (diff)
downloadenlightenment-be9dd395e14d8e6cc0976a5cd8e951c5b92aa85f.tar.gz
It's more complete now.
SVN revision: 25571
Diffstat (limited to 'doc')
-rw-r--r--doc/FDO.txt48
1 files changed, 43 insertions, 5 deletions
diff --git a/doc/FDO.txt b/doc/FDO.txt
index 8ebe00a914..61ee2cdbe4 100644
--- a/doc/FDO.txt
+++ b/doc/FDO.txt
@@ -1,11 +1,26 @@
-Enlightenment DR17 use freedesktop.org .desktop files according to the
+Enlightenment DR17 uses freedesktop.org .desktop files according to the
XDG Desktop Entry Specification version 0.9.4, icon themes according to
the XDG Icon Theme Specification version 0.11, and menus according to
-the Desktop Menu Specification version 0.92. There are some extensions
-though.
+the Desktop Menu Specification version 0.92. Everything is searched for
+in paths specified by XDG Base Directory Specification version 0.6.
+There are some extensions and gotchas though.
-.desktop extensions.
+Paths.
+
+The spec wants us to run gnome-config and kde-config several times at
+startup. This is currently #if'ed out and replaced with guesses. Lots
+of guesses is a lot quicker than actually running those programs, and
+often is good enough. The plan is to have an idle process run those
+programs and fix the guesses.
+
+A lot of distro specific quirks can be solved by adding more directories
+and directory snippets to the ecore_desktop_paths code. The process of
+eliminating non existing directories is quick, and only done once at
+start up.
+
+
+.desktop.
Two extension fields are defined as allowed by the specification.
@@ -34,7 +49,7 @@ just copy the app/icon/class data to the X-Enlightenment-IconClass
field.
-Icon theme extensions.
+Icon theme.
.edj files are searched for before the other types of icon file. The
"icon" group is used to specify the graphics for the icon. It is up to
@@ -42,3 +57,26 @@ the code using the result to allow full edje interactions and
animations, and people that write that code are encouraged to support it
all.
+
+Menus.
+
+The most complex, and thus the most problematic of the specifications.
+The general philosophy is to err on the side of caution, giving the user
+more apps in their menus rather than less. Even if that means some
+duplicates and some things that aren't really apps.
+
+There is often a .hidden menu, it contains various types of things.
+Some of those things are supposed to be moved into proper menus by the
+menu moving part of the spec. The menu moving code has not been
+implemented yet. Following the above philosophy, it is shown to the
+user.
+
+Slackware and probably other distros use parent style menu merging.
+Initially I did not write code to support that for two reasons. The
+specification is confusing, and it takes some digging and cross
+referencing other specs to sort out what it actually means. The other
+reason is that distros available to me at the time for testing did not
+use parent style menu merging, so there was no way to test it properly.
+Now that I know of at least one distro that uses them, it's worthwhile
+writing the code, and installing slackware under QEMU for testing.
+