The overriding assumption here is that any dialogs displayed and any external applications launched match the expectations of the user on whichever desktop environment they choose to run.
Included in Xdg-utils 1.0
Install/remove/update a menu item TaskMenu
Install an application launcher onto the desktop TaskDesktop
Send email TaskEmail
Enable/Disable the screensaver TaskScreensaver
Open a local file, folder or URL in the user's preferred application TaskOpenURL
Register/unregister an application as capable of handling a specified Mime-type TaskMime
Medium Term Tasks
Run an application as the superuser TaskSu
Query the address book TaskAddressbook
Access resources provided by a Virtual File System layer TaskVFS
Link and embed objects between KParts and Bonobo
- Access the current proxy settings
- Proxys are hard. Dynamic proxy configuration, whitelists, etc. What do we want to support here?
- Suggest to offer a service that returns the proxy to use for a specified host
Such a service should support the Netscape's Proxy Autoconfig Format - that requires some minimal JavaScript engine I think
- Proxys are hard. Dynamic proxy configuration, whitelists, etc. What do we want to support here?
- Default applications
- Categories
- Web browser
- Mail reader
- Terminal
Default application for a specific file type (Mime-type) (Covered by TaskMime)
- Functionality
- Query which application would be used
- Ask a different application to become the default handler
- Suggest to offer a service that prompts user for confirmation before making change
- Categories
- Open a web browser in a controlled fashion
- Necessary options?
- Add/query bookmarks
- Open a file/directory/url selector dialog from shell script
- Display common dialogs (open/save, dir/color/font/printer selection, etc) using the standard dialogs provided by the desktop enviroment.
- Launch a help viewer
- Integrate help in help index
- Register an application to automatically start when logging in (autostart)
- Suggest to offer a service that prompts user for confirmation before making change
- Accelerators (aka. shortcuts)
- An application may implement an accelerator (e.g. Alt-Drag) that some desktop environments reserve for desktop functionality
- Provide a way to identify global accelerators already in use (prevent collisions between app and desktop environment)
Provide a way for apps to claim & register global accelerators
- Which accelerator is used for switching between keyboard layouts?
- What are the different keyboard layouts that the user is switching between?
Long Term Tasks
Desktop Configuration ["TaskDesktopConfig" ]
- Open a file/directory/url selector dialog from binary applications
- Include custom widgets in dialog
- Access desktop fonts
- Application font, desktop font, monospace font, what else?
- Custom per-user fonts
- Determine the default printer
Print a document PrintDialog
- Printer-specific options (landscape/portrait, duplexing, copies, etc.)
- Print preview window
- Hook-ins with printer-related document settings
- Margins (scale vs. clip to fit)
- Print format (PS/PDF/bitmap/...)
- DPI Resolution
- Page background
- Page numbering
- etc.
- Display custom widgets?
- Determine the current Online/Offline state
- Request a network connection (Launching/managing the modem)
- Enable/Disable power management for the display
- Theme-specified symbolic colors
- Link text color, visited link color, what else?
- Generic support just went in to GTK
- Password storage (keyring/wallet)
- Single certification/Single sign on
- Adjusting or muting the speaker volume?
- Can we avoid the sound server ratnest?
New Ideas and their user rating (comments)
- framework for desktop-global event notification?
- ("app xyz needs the user to do this and this")
- framework for user app logging?
- (similar to syslogd/klogd, but for desktop apps?)


