Giter Site home page Giter Site logo

juanlao7 / remolacha Goto Github PK

View Code? Open in Web Editor NEW
22.0 3.0 3.0 4.47 MB

A web desktop environment for remote servers.

License: GNU General Public License v3.0

TypeScript 84.51% JavaScript 6.12% Sass 4.72% SCSS 3.90% Shell 0.44% EJS 0.31%
desktop-environment web-desktop server-management window-manager

remolacha's People

Contributors

dependabot[bot] avatar juanlao7 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

remolacha's Issues

Keyboard navigation

  • It should be possible to do everything without a mouse.
  • Windows must trap the focus inside them.

Import remolacha's types in apps

After spending a couple of days I couldn't figure out how to import the types of the remolacha base module in apps.

  • Remolacha's modules are publicly available in window.remolacha because webpack.config.json defines output.library = 'remolacha'. Apps have access to the module without having to embed remolacha's code in each app.
  • Remolacha's types are automatically generated in types/remolacha/index.d.ts, but I could not find a way of importing them from apps.

The current workaround is that apps just do declare var remolacha : any; to get access to the remolacha object, but that's dirty.

Enable pointer events on unfocused windows

In order to perform pointer actions on a window, you must focus it first by clicking on it.

That's slow. It would be better to leave pointer events enabled and perform mouse actions at the same time as the window gets focused, as happens in Microsoft Windows.

Implementation problem

Even if we enable pointer events for unfocused windows at CSS, they still won't work.

The problem is that, when we perform a mouse-over on an unfocused window, the system focuses it by moving its DOM element upfront (by removing & adding it again to the DOM tree). Removing the DOM element from the tree cancels the click event that should happen when the user unpresses the mouse.

To solve this we should also stop moving the DOM elements around the tree and use the z-index CSS property instead.

Dialogs should block only their app

Now, when you open a dialog (e.g., when renaming files on Files app), it blocks the entire environment:

image

Dialogs should block only a certain window, or all windows of a certain app, but not the entire desktop.

Smart window positioning

When an app creates a window, it would be nice if the system could calculate the optimum position for it (i.e. minimize the overlapping area with other existing windows).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.