eagle mode running smoothly in gnome/compiz

  • Mark McCorkle

    Mark McCorkle - 2009-08-26

    Via the following modifications to my window manager (beryl/compiz on Ubuntu 9.04), I now have EagleMode running "under" all other normal windows (effectively as my "root" window which is also called the desktop in other places).

    Step one, stop running Nautilus.  It has its qualities, but it will make this howto not work.  If you still want to use Nautilus to view particular folders, setup a shortcut like "nautilus --no-desktop /home/username/" in your panel, or set that up as a hot-key command (ask if you don't know how to do that in ubuntu and I'll help). 

    Anyways, once you've got Nautilus no longer rendering the root window, fire up Eagle Mode and position it basically where you want it on your desktop (bottom half, whole thing, etc) and then fire up the compiz settings manager (called `ccsm` on my machine) and then scroll down to the bottom of all the options.  There should be a check-a-ble option for "window rules", go ahead and check that box and then click on the name to bring up the options.

    You are going to want to edit a few of these fields, I'll point them out and explain them best I can.

    * Below -- set this one to "class=EagleMode" without the quotes.  What that means is that we are setting any window with the class of EagleMode to be below all other windows.  What this does is effectively push EagleMode to the desktop/root window (its actually one notch above the desktop/root window, but who cares).

    * Sticky -- set this one also to "class=EagleMode" without the quotes.  This option makes eaglemode stay on ALL virtual desktops right where you have it, so if you hot your hotkey to rotate your cube or flip your virtual desktop space, the new window will include the same view of your eaglemode. 

    Fullscreen -- again, set this to "class=EagleMode" without the quotes.  Eaglemode has its own fullscreen button, but the compiz option does a few useful things that eaglemode doesn't.  First, it limits the fullscreen to one screen (I've got dual head, and prefer eaglemode stay on the right display) and secondly, every time you bring up eaglemode in the future, it will already be fullscreen and you won't have to toggle it.

    That's about it.  Once you do these things, every time you execute eaglemode in the future, it will stay below other windows, stay sticky on all desktops, and remain in a fullscreen view for ever.  I'll watch this thread and try and help if anyone has any specific questions on what I'm suggesting here. 

    • Oliver Hamann

      Oliver Hamann - 2009-08-27

      What happens when you open additional Eagle Mode windows?

    • Mark McCorkle

      Mark McCorkle - 2009-08-28

      They totally overlap.  Foiled!  Whats the purpose of the multiple windows?

    • Oliver Hamann

      Oliver Hamann - 2009-08-28

      Multiple windows of Eagle Mode can be used to work on multiple directories simultaneously - just like with almost every classic file manger. I know that many ZUI freaks are expecting something different, but I really think that the good old concept of floating windows on desktops should never be eliminated.

    • Mark McCorkle

      Mark McCorkle - 2009-08-28

      why not do a "picture in picture" mode on demand?  For example, if the user holds ctrl-alt and zooms in (or out) it leaves the main view at its current state and creates a "popup" PIP view (upper right hand corder, about 1/5th the main window size) that the use can find whatever they are looking for and then move files (or later, when they can remove virtual cosmos items, drag-drop style).

      The paradigm that I'm seeing ZUIs like eagle mode coming to is as a full "desktop" interface, replacing the file manager, the window manager, and the concept of starting / stopping applications as you need them, instead allowing executing processes to exist somewhere in your cosmos as "stopped" processes until you zoom into them and attempt to interact with them (fire a CONT signal at mouse click?) and then allow the user to interact like they normally would with a typical application and then "save" a version of the file being worked on as the user zooms out / shifts focus (that part would have to be added in per  applications, but since we are mainly talking open source apps, that's pretty easy to do / send a patch).

      I could see a whole new set of challenges coming out of doing things this way, and it can't be done on your shoulders alone as it needs help from the other open source app developers, but with the right kind of dressings / eye candy, I can see Eagle Mode being the next major user interface shift.

      Are you interested in designers and other programmers getting involved in this project?

    • Oliver Hamann

      Oliver Hamann - 2009-08-29

      > I can see Eagle Mode being the next major user interface shift.

      You see more than I. For me it's just a dream, because there is at least one big obstacle: unacceptance (user are very accustomed to classic GUIs).

      And if you remove the concept of windows, that obstacle even gets bigger.

      > Are you interested in designers and other programmers getting involved in this project? 

      At the moment, I don't want to make "my" Eagle Mode a community project. But everyone is welcome to write and publish any plugins and extensions. I would link them all.

      • Mark McCorkle

        Mark McCorkle - 2009-08-30

        If the application still opens into a frame when the user activates (by double clicking on the file) and then the user is able to grab that application and drag it out to be its own VcItem like entity that will live in the cosmos somewhere, they can still interact with their application just like the currently do, but its a zoomable (drag/drop to move and grab edge of frame to resize) element in the cosmos instead of the typical 2d/flat view of the same application. 

        as a visual example (pardon the obvious shooping):
        normal view of a text file: http://www.gambitdevelopment.com/images/eagleModePoc1.png
        user double clicks text file: http://www.gambitdevelopment.com/images/eagleModePoc2.png
        user clicks button to "pull application out": http://www.gambitdevelopment.com/images/eagleModePoc3.png

        The application stays running until the user zooms out X%, and then you'd suspend the app (kill -STOP 12345) and let the Linux kernel's swap scheduler deal with swapping the app's RAM to disk out if it needs it for something else.

    • Oliver Hamann

      Oliver Hamann - 2009-08-30

      Nice idea but:

      I think the main purpose of a window manager is that the user can easily group multiple applications on the screen in order to watch and control them simultaneously (e.g. debugger, source editor and project files), and that he can switch extremely fast between applications or groups of them. They have solutions like overlapping, sizing, grouping, stacking, sticking, shading, iconifying, icon lists, task bars, multiple desktops, virtual desktops, and much more.

      Your solution would have to have lots of features in order to be coequal. But how could you make it better? What were the advantages against a solution with ZUI apps in a classic window manager (with at most ZUI task bar and ZUI start menu)? I'm afraid it would have to be much better in order to get accepted.


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks