Git Product home page Git Product logo

Comments (2)

Eloitor avatar Eloitor commented on August 20, 2024 1

Started by the user on a tty or by the display manager

I don't know exactly what it does, but some wayland window managers work better when started like this:

dbus-run-session goose

We should investigate what does this allow...

from goose.

blobject avatar blobject commented on August 20, 2024

Server:

  • A long-running, standalone piece, written in C
  • Started by the user on a tty or by the display manager
  • Retains the true state of all that pertains to window management (not sure if there exists any other kind of state -- maybe mouse cursor position, but even that may get taken up by the underlying wayland software)
  • State can be modified and queried from the outside, almost everything, like: states of windows, frames, outputs; positioning and ordering methods; configurables; etc.
  • All outside communication to be done through either dbus, sockets + json, or plumbing?

(Server) State of environment:

  • Available inputs, outputs, and other system information

(Server) State of windows:

  • Open windows (and their programs)
  • Their size, position, focus, order
  • Their grouping, tagging, marking

(Server) State of management:

  • Stuff currently in play, in relation to the "m" part of "wm"
  • What is visible; how windows are laid out; rules, mechanisms, tactics; etc.

(Server) State of configuration:

  • User specified stuff, colors, rules, log level, paths, etc.

(Server) State of input mapping:

  • Keys/mouse-buttons do what

(Server) History:

  • List of past window management events
  • For purposes of undo, redo

Main client:

  • A user-modifiable script, written in Tcl, that can send messages to the server in order to perform queries or modifications on the fly
  • A set of script words (a Tcl library, an API) is provided by the server that hides most of the details of the message protocol

Overview client:

  • A window management configurer that is mostly redundant (with the main client), but additionally provides an overlaid graphical means of control
  • Hopefully doable in Tk, but wondering how then to achieve neat visual effects

Miscellaneous clients:

  • Bars, pagers, Tk widgets, etc. that likely will be in the purview of end users

from goose.

Related Issues (12)

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.