Izdanje korisničkog okruženja Enlightenment 0.28 i knjižnica EFL 1.29

Nakon gotovo dvije godine razvoja, objavljeno je korisničko okruženje Enlightenment 0.28, koje se temelji na skupu biblioteka EFL (Enlightenment Foundation Library) i widgetima Elementary. Kod je napisan na jeziku C i distribuira se pod BSD licencom.

Radnu površinu u Enlightenment čine komponente kao što su upravitelj datoteka, skup widgeta, panel za pokretanje aplikacija i grafički konfiguratori. Grafički konfiguratori nude kako visoko-nivoe alate za prilagodbu (mijenjanje izgleda, postavljanje virtualnih radnih površina, upravljanje fontovima, razlučivosti ekrana, rasporedom tipkovnice, lokalizacijom itd.), tako i mogućnosti za nisko-nivo prilagodbu (na primjer, moguće je postaviti parametre keširanja, grafičkog ubrzanja, potrošnje energije, promijeniti logiku rada upravitelja prozora).

Za proširenje funkcionalnosti preporučuje se korištenje modula (gadgeta), a za promjenu izgleda - tema. Dostupni su moduli za prikaz kalendara-planera, prognoze vremena, podataka o praćenju, regulatora glasnoće, widgeta za procjenu napunjenosti baterije na radnoj površini. Komponente Enlightenment nisu strogo međusobno povezane i mogu se koristiti u drugim projektima ili za stvaranje specijaliziranih okruženja, poput sučelja za mobilne uređaje.

Među obaveznim ovisnostima navode se EFL, libexif i libpam (samo na Linuxu). Među preporučenim ovisnostima, potrebnim za postizanje potpune funkcionalnosti, su: connman za podešavanje mreže; bluez5 za rad s Bluetoothom; bc za ugrađeni kalkulator; pulseaudio za upravljanje zvučnim uređajima; acpid za obradu raznih hardverskih događaja; packagekit za praćenje sistemskih ažuriranja; udisks2 za montiranje vanjskih diskova; ddcutil za upravljanje osvjetljenjem ekrana; gdb za praćenje katastrofalnih završetaka.

Najistaknutije novosti:

  • Dodana je podrška za miješanje zvuka koristeći zvučni poslužitelja PipeWire (mogućnost rada s PulseAudio zadržana).
  • Dodana je osnovna podrška za platformu NetBSD.
  • Dodan je modul NetworkManager za podešavanje mrežnih veza putem Wi-Fi, Ethernet, Bluetooth i VPN. Implementirano je automatsko prepoznavanje mrežnih konfiguratora NetworkManager i ConnMan. Preuređeni su dijalozi za pregled popisa veza i podešavanje Wi-Fi.
  • Implementirani su indikatori prometa, načina zaštite Wi-Fi i razine signala, kao i mogućnost pregleda detalja mrežne veze.
  • Dodana je podrška za uvoz postavki VPN i prikaz zahtjeva za vjerodajnice za autentifikaciju. Poboljšana je podrška za povezivanje uz korištenje captive-portala.
  • Pripremljen je modul za upravljanje međuspremnikom, koji ima opcije za spremanje povijesti operacija i brisanje pojedinih stavki iz povijesti. Poboljšano je praćenje promjena sadržaja međuspremnika i operacija označavanja teksta.
  • Dodana je mogućnost ograničavanja gornje granice punjenja baterije radi produženja njenog resursa.
  • Dodana je podrška za profile potrošnje CPU-a, koja se pruža putem ACPI-a.
  • Smanjena je učestalost operacija kontrole stanja kada je ekran isključen.
  • U okruženjima zasnovanim na X11 omogućena je prilagodba kašnjenja i frekvencije ponovljenih pritisaka kada se drži tipka na tastaturi.
  • Dodana je vizualna animacija 'Roll Up' za glatno minimiziranje prozora.
  • Uklonjena je podrška za kreiranje posebnih profila za različite radne površine i ekrane.
  • Povećana je izvedba sučelja za prebacivanje između prozora.
  • Proširene su mogućnosti upravljanja Bluetooth adapterom.

Istovremeno, projekt Enlightenment objavio je skup biblioteka EFL 1.29 (Enlightenment Foundation Library) koje omogućuju stvaranje vizualno privlačnih grafičkih sučelja, koja se odlikuju kompaktnošću, niskom potrošnjom resursa i visokom izvedbom. Unatoč početnom razvoju kao osnove za okruženje Enlightenment, komponente EFL često se koriste za razvoj sučelja potrošačke elektronike i mobilnih uređaja. Na primjer, EFL je sastavni dio mobilne platforme Tizen, koristi se u kućnim aparatima Electrolux, proizvodima Samsung, ProFUSION, Free.fr i Calaos.

Sastav EFL:

  • Eina — biblioteka koja implementira tipove podataka (niz, hash, lista, stablo) i pomoćne alate (rad s logovima, procjena performansi, pretvorba formata itd.).
  • Eet — biblioteka za zapisivanje proizvoljnog skupa blokova podataka u datoteku za kasnije brzo čitanje u proizvoljnim redoslijedima.
  • Evas — sustav za renderiranje koji organizira izlaz na ekran. Evas upravlja sadržajem ekrana kao scenom s objektima čije stanje se može pratiti. Na sceni se mogu izvoditi operacije poput skaliranja, rotacije i 3D transformacija. Ovakav pristup, apstrahiran od pozicioniranja ekranih elemenata, omogućava razvoj korisničkog sučelja iz perspektive dizajnera, a ne programera (u kodu je potrebno definirati samo logiku i ne razmišljati o crtanju i prikazu na ekranu). Evas također apstrahira metodu izlaza, što omogućava korištenje istog koda u kombinaciji s softverskim i hardverski ubrzanim renderiranjem.
  • Ecore — biblioteka za organizaciju ciklusa obrade događaja, koja nudi skup modula za pojednostavljenje zadataka povezanih s obradom događaja, kao što su rad s Evas, nitima, mrežnim vezama itd.
  • Embryo — ugrađeni interpreter jezika Pawn (ranije poznatog kao Small).
  • Edje — grafička biblioteka koja odvaja izgled od koda (izgled se definira kao učitavana datoteka predloška). Edje zauzima prostor između HTML+CSS i SVG. Uz pomoć ove biblioteke moguće je oblikovati korisničko sučelje s animiranim vizualnim efektima i podržava dinamičko oblikovanje (izgled se može potpuno promijeniti samo promenom EDJ predloška, a da se kod ne dira, pri čemu, za razliku od vizualnih tema, redoslijed pozicioniranja elemenata može biti proizvoljno promijenjen).
  • Efreet — biblioteka koja omogućava korištenje specifikacija Freedesktop.org za rad s ikonicama, Desktop datotekama i izbornicima.
  • Eeze — biblioteka za organizaciju interakcije s vanjskim uređajima putem udev, HAL-a i drugih mehanizama.
  • Expedite — alat za mjerenje performansi koji može testirati različite Evas motore, kao što su X11, XRender, OpenGL, SDL i DirectFB.
  • Evil — implementacija razine kompatibilnosti za rad na platformi Windows.
  • Eio — apstraktno sučelje za pristup datotečnom sustavu i implementaciju asinkronog ulaza/izlaza.
  • Emotion — knjižnica za integraciju u aplikacije upravitelja za reprodukciju zvuka i videa. Reprodukcija videa može se izvoditi pomoću Gstreamer, Xine ili drugih vanjskih dodataka (npr., VLC), pri čemu se video prikazuje kao standardni objekt u Evas.
  • Ethumb — knjižnica za generiranje sličica slika, koja ispunjava standarde freedesktop.org. Ethumb je implementiran kao dbus servis i klijentska knjižnica koja komunicira s tim servisom.
  • Elementary — skup widgeta s gotovim implementacijama raznih grafičkih elemenata (od gumba i kontrola do kalendara i modula za uređivanje teksta).
  • Eldbus — nadogradnja na DBus.
  • Ephysics — pruža sredstva za korištenje motora simulacije fizikalnih procesa Bullet u aplikacijama temeljenim na EFL-u. Ephysics osigurava vezu između Bullet-a i knjižnica Ecore i Evas.
  • Ecore Audio — API za rad sa zvukom.

U novoj verziji EFL-a za izgradnju korišten je alat Meson 0.60, poboljšana je podrška za BSD sustave i Windows, objavljen je zastarjeli motor temeljen na API-ju DirectDraw, povećana je učinkovitost keširanja, proširene su mogućnosti za ispis teksta i rad s fontovima, dodane su optimizacije temeljem AVX2 instrukcija, optimizirano je iscrtavanje vektorske grafike, dodan je backend za PipeWire, dodana je podrška za korištenje lokalnih izbornika u macOS-u, implementirana je mogućnost sortiranja stavki izbornika aplikacija uzimajući u obzir lokalizaciju, poboljšana je podrška za Wayland, implementiran je novi API za ispis zvuka, dodan je novi renderer temeljen na OpenGL-u s podrškom za gradijente i kompozitiranje.

Izvor: opennet.ru

Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere 🔥 Kupite pouzdan hosting za web stranice s DDoS zaštitom, VPS VDS servere | ProHoster