X vinduesmanager - X window manager

Det vinduessystem baseret på X11-protokollen holder display-server og vindueshåndtering som separate komponenter

En X-vinduesadministrator er en vinduesadministrator, der kører oven på X Window-systemet , et vinduessystem, der hovedsageligt bruges på Unix-lignende systemer.

I modsætning til MacOS Classic , macOS og Microsoft Windows- platforme (undtagen Microsoft Windows explorer.exe shell-udskiftninger ), som historisk har leveret et leverandørstyret, fast sæt måder til at kontrollere, hvordan vinduer og ruder vises på en skærm , og hvordan brugeren kan interagere med dem, blev vinduesstyring til X Window System bevidst holdt adskilt fra softwaren, der leverede det grafiske display. Brugeren kan vælge mellem forskellige vinduesadministratorer fra tredjeparter, som adskiller sig fra hinanden på flere måder, herunder:

  • tilpasning af udseende og funktionalitet:
  • forbrug af hukommelse og andre systemressourcer
  • grad af integration med et skrivebordsmiljø , der giver en mere komplet grænseflade til operativsystemet og giver en række integrerede hjælpeprogrammer og applikationer.

Sådan fungerer X-vinduestyrere

Når en vinduesadministrator kører, omdirigeres nogle former for interaktion mellem X-serveren og dens klienter gennem vinduesadministratoren. Især når et forsøg på at vise et nyt vindue foretages, omdirigeres denne anmodning til vinduesadministratoren, der bestemmer vinduets startposition. Derudover reparerer de fleste moderne vindueschefer , hvilket normalt fører til, at et banner placeres øverst i vinduet og en dekorativ ramme trækkes rundt om vinduet. Disse to elementer styres af vinduesstyringen snarere end af programmet. Derfor, når brugeren klikker eller trækker disse elementer, er det vinduesadministratoren, der tager de relevante handlinger (såsom at flytte eller ændre størrelse på vinduet).

Vinduesadministratorer er også ansvarlige for ikoner . Faktisk findes der ikke ikoner på X Window System-kerneprotokolniveau . Når brugeren anmoder om, at et vindue ikonificeres, kortlægger vinduesadministratoren det (gør det ikke synligt) og træffer de relevante handlinger for at vise et ikon i stedet. De fleste moderne vinduesadministratorer viser ikke bogstaveligt talt ikoner, der repræsenterer ikoniserede vinduer længere. Ofte giver et hjælpeværktøjslinjeprogram adgang til ikoniserede vinduer.

Mens hovedvinduet med en vinduesadministrator er at administrere vinduerne, har mange vinduesadministratorer yderligere funktioner såsom håndtering af museklik i rodvinduet , præsentation af ruder og andre visuelle elementer, håndtering af nogle tastetryk (f.eks. Alt-F4 kan lukke et vindue ), beslutter, hvilket program der skal køres ved opstart osv.

Der findes standardiserede protokoller, der tillader normale klienter at kommunikere med vinduesadministratoren. Den oprindelige er Inter-Client Communication Conventions Manual (ICCCM), men dette er blevet erstattet af Extended Window Manager Hints (EWMH). Disse protokoller giver klienter mulighed for at anmode om titler til windows og ikoner, kontrollere om et vindue er ikonificeret, som muligvis er tilsluttet eller minimeret, og muligvis tilpasse windows-dekorationer, hvilket virtuelt skrivebord vinduet optager. Yderligere oplysninger fra vinduesadministratoren er tilgængelige gennem kerneprotokollen, herunder synligheden af ​​vinduer, f.eks. Hvis et vindue er skjult på et andet virtuelt skrivebord , og finde ud af justeringerne til vinduesadministratorrammerne.

Typer af vinduesadministratorer

Stacking af vinduesadministratorer

En stabelvinduesmanager gengiver vinduerne en efter en på skærmen ved specifikke koordinater. Hvis det ene vindues område overlapper et andet, overskriver vinduet "ovenpå" en del af det andet synlige udseende. Dette resulterer i det udseende, der er kendt for mange brugere, hvor windows fungerer lidt som stykker papir på et skrivebord, som kan flyttes rundt og få lov til at overlappe hinanden.

I modsætning til at sammensætte vinduesadministratorer (se nedenfor) kan manglen på separate buffere uden for skærmen betyde øget effektivitet, men effekter som gennemsigtighed er ikke mulige.

Stacking af vinduesadministratorer inkluderer Amiwm , Blackbox , Oplysning , Fluxbox , FVWM , IceWM , MWM , Openbox og Window Maker .

Flisebelægning af vindueschefer

En vinduesmanager til fliser er en vinduesmanager med en organisering af skærmen i gensidigt ikke-overlappende rammer (deraf navnet fliser ) i modsætning til den traditionelle tilgang til koordinatbaseret stabling af objekter (windows), der forsøger at efterligne skrivebordsparadigmet .

Tiling-vinduesadministratorer inkluderer awesome , dwm , ion , larswm , ratpoison , Stumpwm , wmii , i3 , xmonad og XWEM .

Sammensætning af vinduesadministratorer

En sammensætningsvinduesmanager kan forekomme for brugeren, der ligner en stabling af vinduesmanager. Imidlertid gengives de enkelte vinduer først i individuelle buffere, og derefter sammensættes deres billeder på skærmbufferen; denne totrinsproces betyder, at visuelle effekter (såsom skygger, gennemskinnelighed) kan anvendes. Det betyder også, at sammensætningsvinduesadministratorer i sagens natur er mere ressource-sultne end en tilsvarende kraftfuld stablingsvinduesmanager. Af denne grund understøtter nogle vinduesadministratorer til X ikke komponering som standard, såsom Openbox . Komponering i Lubuntu

Historisk set gik Amiga i 1985, OSX i 2001, Java Looking Glass i 2003 og Windows Longhorn demo i 2003 (forsinket indtil Vista i 2007) forud for kompositionsindsats under X11. Kompositørvinduesadministratorer til X inkluderer:

Kompositeringsstøtte kan føjes til vinduesadministratorer, der ikke er sammensat, ved brug af kompositorer som compton .

Virtuelle vinduesforvaltere

En virtuel vinduesadministrator er en vinduesadministrator, der bruger virtuelle skærme, hvis opløsning kan være højere end opløsningen på ens skærm / skærmadapter og således ligne et todimensionelt virtuelt skrivebord med dets visningsport . Dette miljø er meget nyttigt, når man ønsker at have et stort antal vinduer åbne på samme tid. Der er oprettet et antal virtuelle vinduesadministratorer, herunder FVWM , Tvtwm , HaZe og andre.

Vinduesadministratorer, der kan udvides

Nogle vinduesadministratorer kan udvides eller programmeres af brugerskripter.

I disse vinduesadministratorer kan brugerne definere nye handlinger eller tilsidesætte standardindstillingerne eller reaktioner på forskellige begivenheder, som f.eks. Vinduesstørrelse og placeringsændringer, vindues oprettelse og sletning, nøgle og mus input, timer osv. De giver ofte on-the-fly kodeudførelse også.

Nogle eksempler på sådanne vinduesadministratorer og de anvendte sprog er:

Se også

Referencer

eksterne links