user interface
Reimagining Deskbar
Following Deskbar redesign proposal is based on discussion in the 3D-Accelerated Haiku Desktop RFC comment thread. One problem that came up was that current menu designs do not support good organization.
Only ways to organize a cascading menu (or variant like Deskbar and Windows start menu) is to use subcategories and separator lines. One good thing about subcategories is that you have a short description (i.e., folder name) attached to the group of items in the category, but those items are hidden most of the time and inefficient to use. Using separator lines for grouping does not affect efficiency, but does very little to aid usability. They have no describing properties and they do not visually connect items between them.
My proposal for Deskbar design that attempts to support both good organization and efficient use, is essentially a new way to visualize subcategories.

The image is from an interactive prototype I made to test this idea. The prototype requires an SVG capable browser (up-to-date versions of Firefox, Safari and Opera work). Please note that the categories and applications shown are just for illustrating functionality and not a proposal for default Deskbar organization.
If your browser supports SVG, please explore the prototype a bit before reading further.
Explanation of the proposed menu visualization and behavior
- Instead of having to click category name to show its content, we have the content listed below the category name. For example, “Browsers” catagory in the image above.
- Often everything in a category is not equally important. To solve this, we add ability to limit which items of the category are shown below its name. A complete list of items can then be accessed by clicking the category name. For example, complete content of “Internet” category, show in the image above.
- Finally, since categories can include subcategories, any item in a lower category can be shown below the name of the higher level. For example, “Firefox” and “BitTorrent” are shown below “Internet” category name in the image above.
To the best of my knowledge, exactly this type of menu has not been used anywhere. It is a combination of cascading menu and index menu that hopefully has the best qualities of both. Names and icons of items are equally well presented. Items are arranged to vertical list, which are easy to skim trough. Grouping of items should be visually obvious. Etc. There is some research results about efficiency and user preferences to vertically arranged cascading menus and index menus here
Visual appearance of this prototype is close to my idea of how this could be done, but contains some rough spots. E.g., how to visualize case where some applications do not belong to any subcategory (see “Productivity”category in the prototype).
Prior art of grouping, showing and hiding menu items
The idea of not always showing complete content of a menu has been used before by Microsoft, but their way was to “intelligently” hide items. There is also a feature in Windows XP start menu that tries to “intelligently” put often used applications to the beginning of the menu. Both of these “intelligent” features are essentially usability bloopers because they implicitly chance the interface. Although my proposal has some similarity to these, I believe it would work, because there would not be any “intelligence”. All decisions to show prominently or hide to sub level would be done explicitly by the user or have default setting that the user can chance.
OS X system preferences has some similarity to my proposal. There is grouping, but it is not visually clear in my opinion. Plus, horizontally arranged large icons with small text may look good but are not easy to skim trough, and place too much importance to the icon.
Blender's button groups interface is a clear source of visualization ideas in my proposal.
Comments?
All comments welcome. Is it appealing or an eyesore? Does it violate known usability principles? If you tried the prototype before reading the explanation, was it hard or easy to figure out how it works?
Many Ideas
First of all, apologize me for my English, I know it not quite good but Im improving. I have posted before but they have been deleted (I dont know why).
Quality / Stability, Kernel
I wish that Haiku before have been or sooner if possible BeOS clone. Have some security and quality features, i propose that this OS have a memory execution protection, just to make the life easier and secure, just to enforce to make best programming practices. The thing is like this:
*proteccion to dont allow execution of code if its in a "not code" memory section/page. So to prevent STACK and HEAP/DATA execution. So the application could fail, but OS remain stable.
*proteccion agaist stack underflow and data/buffer/heap overflow. So bad programmed applications could not damage the Operating system in that way and compromise it.
*independant memory position aplication execution.
with all this open techonlogies (even could be implemented by software) not only could make the user life easier but the developer life too, becouse it could be much more easier too detect some common bugs without crash our system. I guess some BeOS application are not too good programmed so they used that bad techniques, so at first place we could use a COMPATIBILITY user allowed method (or even a listed application allowment for compatibility mode with old and bad BeOS bad programmed apps).
at last
*portable devices compatibility and support, like those that could be plugued inot usb port, ex: Mp3 players, video players, memory cards/sticks, IRDa, WiFi, Routers/Hub/..., external storage.
Network Interface
I wish a well firewall, powerful but yet easy to configure, with an advanced mode for experimented users. Preconfigurated with the common and best settings to do every day work.
*Here we could add, a good network interoperability with all Unix open standards royalty free (SCO, BSD, Linux), to make a good neighborhood this OS in a network.
User Inteface, Game Kit
In this part I really wish a powerful GUI with a simple interface, capable to do good 2D/3D work. With advanced features to made easy programming great games using that GUI-API. I must be easy to extend, but the User Interface must keep standard, with the option if you wish to make it customizable with something like skins disigned by users, but with out let it modify the kernel/drivers of the OS. I made enphasis on standard because it hard work to bring support when the GUI its so different, and even the final user (common user) dont even know it at all its features and diferent options positions.
What its important too bring success to this OS its make powerful and yet simple, but with some easy advanced features for that know how to use it. To bring applications for: word proccesing, calc sheet, slide presentation, a good photo processing ex.linux:GIMP, a good vector drwaing ex.linux:InkScape, good Developing tools, like IDEs, .NET power and simplicity; and not less important a good 2D/3D engine (integrated API) so they (open and close developers) could bring great games. With all this we could attract much more users and industry.
-Morthozz
One Desktop to Rule Them All: A Proposal for Revisions to Tracker
For the purposes of the novice user, Tracker is Haiku. Many people don't even know -- or care -- what an operating system is. As I have said many times before, the average person just wants to get his work done. This makes Tracker's interface crucial to user productivity because it is the main way for someone to use the computer. Many different kinds of people use Tracker. Some want to choose where each file goes. Many more don't care. Some (like me) fit into either category, depending on the moment. Everyone wants fast access to the programs he uses most. Tracker needs to have the ability to automate as much file management work as possible and still make it just as easy for the user to do things manually when he wishes.
The main file management tasks that are performed with Tracker (or components of Tracker) can be categorized under one of two headings: access and organization. The following improvements to Tracker can automate significant parts of both kinds of work without requiring the user to use them.
Improving File Access
File access governs more than just opening a Word document on a floppy disk. It also encompasses starting applications and copying/moving files. There are several ways to keep file access effort to a minimum. The first would be to provide easy access to frequently-used files, primarily certain applications and some of the user's documents. The Start Menu concept pioneered by Micro$oft was a step in the right direction, but a tab-based organization method for documents and applications, as proposed in the 3D Desktop RFC, will help even more. The second way would be to improve the file browser. The third way would be to give the user appropriate and useful search tools.
The current means of browsing the filesystem is based on the spatial concepts initially developed in the Finder for Mac OS, but this needs to change. Desktop computing has outgrown these concepts -- spatial methods are appropriate for small numbers of files, but they are less and less efficient as the number of the user's files increases. Today's desktop user has many files, from word processing documents and spreadsheets to digital photos and music. The Single Window Browse mode needs to be changed because it doesn't provide give enough feedback on where the user is in the filesystem. Merely having the name of the current folder is not enough. Instead, Tracker will use a default format quite similar to OS X and NeXTStep where navigation is done in a series of columns.
Column-based navigation is already present in BeOS, but its use needs to be expanded. A user can navigate the filesystem this way simply by right-clicking on a folder. It is both very fast and simple, but because the columns are displayed in a series of menus and submenus, navigation is not as easy as it needs to be. Menus are not well-suited to this task because of the fine motor control needed to move between folders -- the user must carefully navigate the cursor with precision usually reserved for gaming, particularly at high screen resolutions. Using a regular window for column navigation eliminates this -- clicking on a folder creates a new column to the right of the old one and displays folder contents or file information. At the top of the window will also be a breadcrumb bar which will allow for faster jumps up the folder hierarchy and to make the current filesystem location very clear to the user. Getting "lost" or forgetting ones current location is not normally a problem for advanced users, but it happens frequently for average users. An rough example of the layout for these changes can be seen below.
Note that while the main way for the user for browsing the filesystem will be using the column method, the single window browsing mode will not disappear entirely. It will simply not be the default. There are times where the user needs to be able to see details about entries in a particular folder, and an alternative for the user will be to use the existing List mode to navigate. The breadcrumb bar will still be available to the user for fast navigation and for additional context information. For those with limited screen space, the breadcrumb bar can be configured to use large icons with text labels, small icons with labels, or just the text labels themselves.
Integrated Search Technology
The Big Three operating systems (Window$, MacOS, and Linux) all have "search engine" technology available which enables the user with tools to search his files just like he would search the World Wide Web, but with better results and more options. In its day, one way that BeOS was ahead of other operating systems was its filesystem queries. Queries are powerful, but they have major limitations: they are limited to only BFS disks and they do not search within a file's contents. Full indexing of a computer's documents is needed to let the user search filesystems which do not support queries and also to search within documents. The current thought in many IT companies is that search technology is a "magic bullet" which will solve all of everyone's problems. It isn't, but it is a major part of the solution. Search can provide much of the automation needed to get existing files without having to do the file retrieval manually.
Proper integration is needed to maximize the usefulness of document search. This will be accomplished by changes to the Open and Find windows. The new Open window will contain two tabs: Search and Browse. The Search tab will provide a simple interface for the user to type in terms to find a particular document. It will default to documents of the filetype used by the program, sorted by order of most recent access. An expander will hide or show extended options. The Browse tab will provide the same familiar interface as current Tracker open panels, but with a breadcrumb bar replacing the popup folder menu.
The Find window will be both simplified and made more powerful. The current interface makes complicated searches relatively simple, but simple searches require much more effort than they should, including multiple switches between the keyboard and the mouse. The new Find window has fewer controls and operates more like a search engine -- the user can limit searches to a certain kind of file and enter in terms to be searched in the document's name and/or contents. An expander is available to reveal the extra controls needed to create complicated searches in the same way that it currently does for Search By Attribute. Advanced users will also find the new interface does not sacrifice power: regular expressions can be specified in the name by preceding a term with REGEX: just like it can be done currently with settings for mail filter preferences.
Improving Organization
Manual file organization is a burden that is responsible for countless instances of users having lost documents on their hard drives. Basic forgetfulness and sometimes a lack of a sufficiently obvious indicator for filesystem location -- the user *thinks* he is saving his file in one location when, in fact, he is somewhere else. How often does the location of a file really matter in the first place? Frequently or rarely, depending on what's being done and who's doing it. Office workers often don't care where documents are kept so long as they are easy to find. Many developers like to keep all files for a project in the same folder or in a hierarchy under a folder dedicated to a project. System administrators don't normally worry about where a user keeps his documents as long as it's in his home folder because it makes backups simple. Automation can be very helpful in filing, but it must be possible to control how much automation there is or how often it is used. Some slight modifications to the Desktop and a new Save window can provide some helpful automatic filing without taking control away from the user.
All filing-related changes center around the Filer. The Filer is the proper name for the Sorting Chute concept originally conceived of on the Glass Elevator list. It automatically organizes files for a user according to a set of rules that can be customized. The RFC itself proposes a replicant for placing an icon on the desktop, but because the Filer is an integral part of the Save window, the icon for the Filer should actually be a part of Tracker like the Trash or the Disks icon. However, this icon could be hidden for those users not wanting one more icon adding clutter to their desktop. By adding the Filer to an easily accessed place on the desktop, the user can easily drag and drop a file to it and move on to other tasks, having moved it to a safe, organized, logical location without any of the work involved.
Along with an icon on the Desktop for the Filer, a new Save panel will also be needed. It will utilize the Filer's sorting rules to automatically save documents to an appropriate place or allow the user to manually choose a location for the file. A checkbox, when unchecked, expands the save panel to reveal a file browser window very much like the Browse tab for the Open panel. Normally, all the user has to do is give the document a name and hit Enter or click Save and the rest is done automatically.
The Desktop
Along with the use of the Filer, there is one other small change which will also help the user: a change in the default setting for displaying disk icons on the desktop. The desktop -- as in the part of the screen which is a placeholder for replicants and displays volume icons and the Trash -- does not need many changes. The Disks icon should be displayed on the desktop by default to reduce confusion. A common mistake for novice users is to click on a volume marked BeOS when asked to go click on "the BeOS menu" (as in the Deskbar). The concepts of volumes and mounting, while relatively simple, are foreign concepts to non-technical users, particularly those with only a Windows background. There are other changes which are not technically part of Tracker, such as the Workspaces control, launcher tabs, and an improved system tray, but these are discussed in the 3D Desktop proposal.
Final Thoughts
When combined with the concepts in the 3D Desktop RFC, Haiku has the potential to be an operating system that simple enough for basic users to get work done, but powerful enough that everyone likes using it. Finding your files is simple and you do as much work as you want. Manually navigating the filesystem is fast and it's harder to forget where you are. System-level controls are better organized and easier to access. Up-to-date system information is available at a glance. Virtual desktops are better integrated, so now you also have more desktop space. Haiku has a bright future ahead.3D-Accelerated Haiku Desktop
Services Provided:
The windowing system and desktop are intended to provide a number of services
- Up-to-date status information (time/date, new mail, reminders, etc)
- Program-launching facilities (desktop icons, quick launcher, etc)
- Functionality to work with multiple open programs (Twitcher, workspaces, etc)
- Window management tools (resize, minimize, move, move to front/back)
No More Deskbar
What?! Am I crazy? Nah. It's just that the Deskbar's time has come. There are four current uses for it: launcher, up-to-date system information, system settings, and a loose collection of system-level functions, such as About BeOS and Find. They will all be replaced with better solutions.
Launcher Replacement: Tab-Based Task Organization
Instead of a single point of access to collect everything together (the Be menu), there will be a small group of tabs to provide better organization similar to the OS X product DragThing (screenshot below) and OS 9's Tab Menus. The user clicks on a tab and it expands to display a grid menu which contains the name and icon for each folder/symlink. Subfolders spawn a submenu in the direction moving away from the screen border where the tab originated, i.e. upward when at the bottom, downward when at the top, etc., and the parent menu places a light-colored overlay over all items except for the selected item to make the submenu stand out while still allowing the user to easily see other items in the parent menu. The images below (click for a larger version) show the steps.
This method will provide more width-depth balance -- the current organizational structure is shallow and wide: the top menu has 10 items; the Applications and Preferences submenus -- which are at only the second level of nesting -- have many more choices. Two clicks and significant mouse navigation are required. This method takes advantage of Fitts' Law in at least one direction. The large menu items also increase speed and have a bevelled edge to convey the large size of each item.
System Information: Enhanced System Tray
It seems like the current trend in user interfaces (OS X's Dashboard, Vista's Sidebar, and Google's Gadgets) is to provide some method for the user to download add-ons which look really cool and provide more than what is provided in the system tray. This is because the system tray's small size limits the amount of information that can be provided. The Sidebar's Widgets and Google's Gadgets simply add a window which consumes more desktop space. Worse yet, the add-ons themselves tend to be not fit with the rest of the UI's look and are larger than necessary, wasting the precious space taken up by the new window and adding insult to injury.
The new system tray is similar to the Sidebar in Windows Vista, but is less intrusive. As an option, it can always remain on top, but by default it can be covered up by other windows. Add-ons are required to be simple and uncluttered -- a few words and perhaps a picture. Instead of using miniature controls, each entry is clickable. The default action (such as starting the mail program for the e-mail add-on) is invoked on left click and configuration is done by way of a pop-up menu on right-click.
System-Level Settings and Functions: the Computer Tab
In a way quite similar to the Programs tab, the Computer tab houses access to global functions and settings. The Preferences apps find themselves placed here in submenu. The Find, About Haiku, Restart, and Shutdown items are also placed here.
Window Management Improvements
Minimize in Place
Minimizing a window can actually be a source of confusion for some users. Merely by double-clicking on a window tab, the window disappears and there is no apparent reason why or where it has disappeared to. In fact, unless the user specifically looks at the Deskbar's running program list or there are multiple windows open, the program appears to have closed. In latter case, the document seems to have been closed. The solution is to minimize the window to a miniature version of itself, add the program's icon to its corner to further aid in identification, and place it on the desktop. When a window is minimized this way, the scaling-down process is animated to show its placement on the desktop.
![]() Before
|
![]() |
![]() After
|
Right-click Desktop Menu (Window management functions)
Window management functions until now have been largely ignored and have been limited to Hiding or Showing one or more windows in a program. While these functions can still be used in the Running Programs addon for the system tray, these functions will also be placed in a submenu of the Desktop, so the user can right-click on the Desktop and choose an item like "Hide Program Foo."
Show Desktop
Minimize in Place increases the need for being able to see the Desktop because suddenly it is no longer just a kind of computer junk drawer. Because of this new need, it is more important than before to be able to quickly see it. Invoking this function from the Desktop context menu (see above) or by hitting F11, all windows slide almost completely off-screen. Hitting F11 again returns all windows to their original positions.
Minimize All
Does a Minimize in Place for all open windows in the current workspace.
Workspaces View
Workspaces are feature of BeOS which set it apart from other OSes (except the *NIXes) back in the day. Mainstream OSes today still don't do justice to utilizing them because for them, workspaces are just a bolted-on feature not originally intended in the design of the interface. More so than before, workspaces will be a major part of the user experience -- they allow the user to do much more at once and still remain organized. The workspaces control will be similar to a Replicant, but will be an integrated part of the Desktop, defaulting to the center of the bottom edge of the screen. By having a 3D-accelerated desktop, it will be possible to see live updates of all programs.
![]() The control up close
|
While all of this may be nothing particularly special so far -- integration and visual enhancement of a current feature -- there is one more tool in the window management toolbox: a zoomed workspace view. By hitting F12 or choosing the appropriate option from the Desktop window management menu, the Workspaces control expands to full-screen size (with a corresponding zoom animation). At this point, the user can double-click on a particular workspace to switch to it, move windows around, or just watch multiple apps working at once. Switching from this full-screen view to a workspace results in yet another appropriate zooming animation into the requested workspace to give context to the user.
Enhanced Twitcher
Some users will not necessarily want to work with multiple workspaces and prefer to keep everything in the same workspace, piled on top of each other. For these users, there will be some small enhancements to the current Twitcher. It will show a live preview of the window along with the program name and the title of the window switched to when released. A semi-transparent black overlay is placed in between the screen and the Twitcher previews (in the Z order) In order to increase the visual contrast from the actual desktop. The selected app's preview has a "glow" selection rectangle placed around it and the title header is shown in a slightly larger font size. The previews themselves are as large as possible -- up to the full size of the window -- and are scaled down only enough to fit all windows within the width of the window. They are also placed close enough together that the selection indicator slightly overlaps the others to visually "push" the selected preview in front of the others.
Window Movement Constraints
Sometimes the user gets himself into a bit of a mess when a window is somehow off the screen and he can't get it back on the screen. Small changes in window dragging will help prevent these situations.
- Top / Bottom Tab Constraints - window tabs cannot be dragged below the bottom edge or above the top edge of the screen.
- Left / Right Screen Alignment - Using the Snap-and-Go techniques pioneered by Patrick Baudisch, allow the user to easily align a window to the side of the screen without preventing him from moving it further.
Hardware Considerations
One problem with depending on a 3D graphics card to do certain tasks in the main part of the interface is figuring out what to do when there *isn't* a 3D card or how to handle the differences in the capabilities of each card. The solution is three-fold: implement certain functions in software, turn certain enhancements off, and provide lower-overhead alternatives to enhancements.
An example of using these methods to provide a good user experience with less-capable hardware can be found in the new Twitcher. Live previews would be processor-intensive, so instead of providing live ones, the user is given a snapshot of each app's state when the Twitcher was invoked -- a non-live preview. The soft-glow of the selection could be replaced simply with one generated with a simple solid-color rounded rectangle. Live updates to the goings-on under the overlay would be handled in the same way as the live previews - take a snapshot of the desktop, apply the overlay, and show the Twitcher. While the enhancements will not run nearly as fast as the hardware-accelerated versions, they should still be quite usable and responsive.
Another low-power handling example can be found in the new Workspaces control. Visually speaking, the control would look like the current version -- small representations of the windows with text labels. The zooming effect when switching between to full-screen mode and a workspace could be eliminated or an outline rectangle could be used.
Final Thoughts
These changes are by no means small, but they have the potential to make Haiku an operating system that makes the user's experience much more enjoyable and productive for users of all levels of experience.
Rethinking scrolling
The way scrollbars work is pretty inefficient - especially for novice computer users. They offer three (!) methods for scrolling relative to the current position and none of them offers comfortable scrolling speed for all document sizes.
The arrows in the corners are very small compared to the scrollbar's overall size and they are too slow in most cases. Still, a lot of people use the arrows to scroll rather large distances in a document.
The scroll thumb (slider) is too small in big documents and requires too much aiming although it is the fastest and - for moderately-sized documents - a sufficiently accurate way to change your relative position. For very big documents this way of scrolling becomes nearly useless because it moves areas bigger than the visible region.
Scrollbar basic lookA third alternative is to scroll page-wise by clicking on the non-highlighted area. This is often too coarse-grained and sometimes collides with the thumb which may suddenly appear under the mouse cursor, so you have to adjust your mouse position to continue scrolling that way. Inexperienced users sometimes click on the non-highlighted area to quickly get to a specific location.
The following proposal should be more effective, but it requires an initial training phase because it's different from the current way of scrolling.
The arrows at the top and bottom are not buttons, anymore. Also, they are bigger to make it more obvious that they are part of the scrollbar background. The scroll thumb lights up when the mouse is moved anywhere on the scrollbar (not just the knob). The general appearance of the scrollbars is very similar to that of the current mainstream operating systems.
Left-click scrollingPress and hold the left mouse button on any place on the scrollbar and you get into relative scroll mode. To clarify, you can click on the thumb, or on the arrows, or anywhere else on the scrollbar and it will have the same effect. By moving the mouse you can scroll a proportional amount of screen area in the same direction. The mouse movement causes the thumb to be moved at comfortable speed which is independent of the document size. Mouse movement has no effect on the cursor's position (i.e.: it works as if you could move beyond the screen borders).
Right-click scrollingRight-click (tablet users will prefer ALT+left-click) on any place on the scrollbar and you immediately jump to that location in the document. By keeping the mouse button pressed and moving the mouse the thumb will move directly with the mouse pointer as if you had right-clicked there.
When moving the mouse over a scrollbar the cursor becomes a double-arrow (up/down or left/right), so it becomes more obvious that by left-clicking you can move the scroll knob.
Pressing ESC with the mouse button held will bring you back to the last position before scrolling.
This proposal has the disadvantage that the right-click scrolling function is non-obvious and users would have to learn it, so it's not perfect and it could need more work.
Sorting Chute
The means of having the operating system automatically sort, file and perform actions on filesystem objects based on user-configurable criteria should be provided through the use of a "drop target" replicant known as the "Sorting Chute".
Details
The sorting chute would be comprised of three main components:
- Replicant
- Preference Applet
- Drop Folder
Replicant
The replicant would act as a space on the desktop, designated by an appropriate visual representation, whereby filesystem objects can be dropped to have actions invoked upon them based on a set of user-defined rules.
Preference Applet
The preference applet would act as a means of configuring the rules against which the replicant would compare dropped objects. For each rule, the user should be able to specify the criteria matching objects must exhibit, and the actions to be carried out on those objects.
Drop Folder
The drop folder would simply be a folder monitored by the replicant for incoming files. This would enable direct saving or downloading of files to the "sorting chute" for immediate filing.
Rules
Rules should be constructible in much the same way as queries today. The main difference being the ability to set actions to be performed on matching files.
Actions
The available actions for a given rule should be comprised of standard filesystem actions (Copy, Move, Delete, Rename) as well as actions provided by Tracker Add-Ons able to operate on files matching the specified criteria.
Example
The following rules have been setup by the user:
- Name: Compressed Files
Matches: [Type==application/x-compressed]
Actions: Unzip to "/home/desktop", Move to Trash
- Name: Photos
Matches: [Type==image/*] AND [EXIF::Manufacturer==Canon] AND [EXIF::Model==Ixus]
Actions: Thumbnail, Move to Folder "/home/photos/%year/%month"
- Name: Install Applications
Matches: [Type==application/x-bundle]
Actions: Install for All Users
The user downloads a zipped file from the internet and chooses the Drop Folder as the download location. The replicant is notified of the creation of a new object and matches it against the Compressed Files rule. The file is unzipped to the desktop (Tracker Add-On) and the compressed file is moved to the trash.
The user connects their camera, which is mounted by the OS as a removable media device. The user drags the photos from the camera to the Sorting Chute replicant which matches each individual file against the Photos rule. The icon of each photo is set to a thumbnail of the photo, created by the Thumbnail action (Tracker Add-On), and the photos are moved to a folder based on the current month and year.
The user has downloaded an application bundle, used the application, and decided that it's worth installing for all users of their computer system. They drag the application to the Sorting Chute replicant which matches the bundle against the "Install Applications" rule and performs the action "Install for All Users" (Tracker Add-On)
References
- Installer [Bundles]
Usability Improvements
Usability Improvements
Haiku R1 should be polished and not suffer from BeOS' insufficiencies. If we release a half-baked OS our userbase will turn away.
This is a summary of many improvements discussed on the GE-list and elsewhere:
TODO for R1
- rework window zooming as it often does not work as one would expect
- add BTextView context-menu with "cut", "copy", "paste", "select all", "undo"
- improve BTextView keyboard-navigation: move to next/previous word, paragraph, beginning/end of file
- show the task switcher immediately upon hitting CTRL+TAB (seems to be an R5 bug which causes a too long delay)
- remove unneeded preferences (menu settings, scrollbar style)
- combine similar preferences apps (Appearance: UI+screen, Input Devices: mouse+keyboard+keymap, Media: audio+video+sounds, Networking: ppp+networking)
- modify apps in the source tree to match modifier key functions for lists: Shift-click selects a range, CTRL-click toggles one item
- parent menu items which don't have a message associated with them should not close the menu when clicked
- demo apps are not needed by default. why is the clock replicant in the Applications menu? it's a demo! remove more unneeded apps and make sure all apps sit in the right category (apps vs prefs)
- Tracker: all entries in the date column should have the same width and use the same formatting. no more mixed entries with "Friday" here and "Sat" there. use fixed-width font?
- Tracker: use different cursors for "move" and "copy"
- automatically remove deleted apps from FileTypes DB (it quickly blows up like the Windows registry)
- highlight controls somehow when the mouse moves over them to indicate "clickability"
- Deskbar should be able to reserve screen space for itself (zoomed windows don't take up that space)
- Tracker: "Identify" action in context-menu should be hidden or moved somewhere else (if identification cannot be automated reliably)
- Deskbar: all items should get a right-click context-menu
- Tracker: remove "Clean Up" action. use a fixed, non-overlapping grid for icons (overlapping icons are evil)
- auto-mount read-only media (at least CDs)
- Tracker: add mouse cursors which indicate a "copy" or "move" operation on drag-n-drop
Ideas for R2
- (needs more thought) rework mounting process: create auto-mount-points and always show all mountable volumes. unmounting should be replaced by unloading a complete device (CD, USB drive, etc.). show device icons on desktop. their contents are the mountable volumes. ??By default volumes are auto-unmounted when they not needed, anymore. To permanently keep a volume mounted you drag-n-drop it on the desktop (or maybe a folder?), so you have a permanent mount-point.??
- magnetic screen corners (all windows docking to screen edges ala Winamp)
- time should always be visible (never overlap Deskbar)
- add screen scaling support (resolution-independent)
- design all apps such that they show more information and less buttons
- less top-menu items and more contextual actions (pop-up menus) and information
- Tracker: when holding down some shortcut-button while clicking an item in the folder-browser context-menu the menu should not close, but open that item in the background (allows for multiple items to be opened)
- add global shortcut support (open folders, apps, actions) ala SpicyKeys and improve keyboard navigation because experienced users are faster with keyboard
- reduce number of servers (audio_server, media_server, media_addons_server, why not just media_server?)
- is separation of Tracker and Deskbar needed? it's not that I could continue my work if only Deskbar crashes
- Tracker: show size of selected files in current folder as little bubble-window next to mouse pointer (and hide it when mouse exits window frame, so I can quickly check multiple folders). maybe also show size of all files if we have enough space
- Tracker: automatically adjust column-widths when window is resized (see Thunderbird)
- Deskbar: too inaccessible. I rarely use it because it's always hidden by max-zoomed windows
- where is the long-discussed simplified and more powerful one-click installer with a package manager and automatic package updates?
- colors should be used more actively in system controls
- search results (BTextView, etc.) should be marked within the scroll bar, so you can quickly scroll to other results (instead of clicking "next"/"prev" buttons)
- mark location of a selection within the scroll bar (or allow for adding marks via scroll-bar?)
- arrange workspaces and desktop as 2D space (navigate via ALT+arrows)?
- Deskbar as clipboard (drag-n-drop anything on it)?









