Kaneel krijgt voortgangsbalk in de taakbalk
Zoals je misschien al weet, kunnen apps in Microsoft Windows, beginnend met Windows 7, een voortgangsbalk tekenen in de taakbalkknop van hun app. Het is handig wanneer u enkele bestanden kopieert, iets downloadt of een enorme app installeert, wat tijd kost. In wezen heeft elke taak met een voortgangsbalk baat bij de taakbalk die dit aangeeft. Hier is goed nieuws voor Linux Cinnamon-gebruikers: dezelfde functie komt naar Cinnamon.
Advertentie
Cinnamon is de vlaggenschip-desktopomgeving van Linux Mint. Begonnen als een Gnome-vork, is het nu volledig onafhankelijk.
In de aankomende Cinnamon 3.6-desktopomgeving hebben de ontwikkelaars een speciale wijziging doorgevoerd in de LibXapp, de kernbibliotheek die wordt gedeeld tussen apps die zijn opgenomen in Linux Mint.
Ontwikkelaars hebben het als volgt beschreven:
Wanneer een applicatie iets aan het doen is, wordt er meestal een voortgangsbalk weergegeven. In plaats van gedachteloos naar de bar te kijken en te wachten tot deze 100% bereikt, grijpen mensen gewoonlijk de kans aan om iets anders te doen of zichzelf af te leiden op het web terwijl ze wachten. Het probleem is.. hoe weet je wanneer de applicatie klaar is als je de voortgangsbalk niet kunt zien? Hoe kunt u de voortgang van de bewerking in de gaten houden nadat u het venster hebt geminimaliseerd of andere vensters erop hebt scherpgesteld?
Sommige toepassingen, zoals de USB Stick-formatter of de bewerkingen van Nemo-bestandsbeheer, hebben dit probleem omzeild door hun venstertitel te wijzigen om hun voortgang aan te geven. Op die manier is het percentage niet alleen zichtbaar in hun titelbalk, maar ook in de vensterlijst van het paneel.
Windows 7 deed dit nog beter, ze implementeerden een mechanisme waarmee applicaties hun voortgang aan hun omgeving kunnen communiceren.
We hebben besloten dit in Linux mogelijk te maken door het in LibXapp te implementeren.
LibXApp is een C-bibliotheek die in de meeste distributies beschikbaar is. Het biedt dynamische bindingen met vele talen via de GIRepository.
Hier is een voorbeeld in Python:
import gi. gi.require_version('Gtk', '3.0') gi.require_version('XApp', '1.0') van gi.repository import Gtk, XApp-venster = Gtk. Raam() window.set_title("Mijn venster") window.show() XApp.set_window_progress (venster, 50) XApp.set_window_icon_name (venster, "info") window.connect("destroy", Gtk.main_quit) Gtk.main()Zoals u kunt zien, kan de toepassing een voortgang (50% in dit voorbeeld) doorgeven aan de windowmanager door simpelweg XApp.set_window_progress (window, 50) aan te roepen.
In Cinnamon 3.6 is die voortgang zichtbaar in de vensterlijst:
De bibliotheek biedt ook een nuttige klasse genaamd GtkWindow die is afgeleid van Gtk. Window en biedt deze functies rechtstreeks via de instantie:
import gi. gi.require_version('Gtk', '3.0') gi.require_version('XApp', '1.0') van gi.repository import Gtk, XApp-venster = XApp. GtkWindow() window.set_title("Mijn venster") window.show() window.set_progress (50) window.set_icon_name("info") window.connect("destroy", Gtk.main_quit) Gtk.main()
Deze functie wordt verwacht in de volgende update van Linux Mint. Mint-versie 18.3 bevat de taakvoortgangsfunctie voor de volgende apps:
- Nemo (bestandsbewerkingen)
- De back-uptool
- De softwaremanager
- De chauffeursmanager
- De USB Stick-formatter
- De USB-beeldschrijver
Ontwikkelaars overwegen ook om ondersteuning voor deze functie toe te voegen aan MATE/Caja en Synaptic en zijn hulptools zoals Update Manager, Taalinstellingen en Softwarebronnen.
Ten slotte heeft de netwerkapplet in Cinnamon de mogelijkheid om opnieuw te scannen op draadloze netwerken.
Al deze veranderingen worden verwacht in Linux Mint 18.3.