Giudicate voi stessi guardando questi due filmati: il primo mostra il ridimensionamento di una sidebar Qt in un desktop qualsiasi con X.org, il secondo mostra lo stesso scenario, questa volta spinto dalle Qt 4.4. La differenza è evidente.
Com’è possibile tutto ciò? Se ho ben capito quanto scritto in questo post sembrerebbe che la soluzione sia l’utilizzo di widget che non vengono riconosciuti da X.org e che quindi non subiscono la sorte di quelli tradizionali al momento di un’operazione di ridimensionamento. Questi widget speciali, chiamati alieni ( proprio per il fatto che non sono nativi di X.org ) verranno introdotti nella prossima versione del toolkit Qt ( 4.4 ), per la gioia degli sviluppatori KDE e, ovviamente, di noi utenti.
[ via OSNews ]
slot
24 ago 2007 - 10:41 - #1Non saprei dire se è un bene o un male.
Però sono contento
nihilus
24 ago 2007 - 10:58 - #2 (nascondi)per definizione tutto ciò che riguarda QTKDE è male a priori fosse pure una borsa di studio in programmazione con spese pagate a cortina, ma per un utente di KDE è sicuramente un bene
ekerazha
24 ago 2007 - 11:16 - #3Sarebbe meglio che spingessero per lo sviluppo ed il miglioramento di X o che si impegnassero seriamente su una alternativa (DirectFB?), invece di tirare fuori questi ibridi sciocchi.
no_lore
24 ago 2007 - 11:29 - #4concordo con ekerazha, anche se nel mondo open ad ogni consiglio o suggerimento, fatto da membri di un’altro progetto, viene preso non come tale ma come una critica al lavoro che viene svolto e nascono diatribe inutili che alla fine non portano a niente. speriamo che non appena kde rilasci queste qt, quelli di xorg integrino il codice in X a beneficio di tutti!
openmiky
24 ago 2007 - 11:38 - #5imho dovrebbero migliorare X.org
sirus
24 ago 2007 - 12:09 - #6Che Xorg sia una palla al piede è risaputo. Tuttavia non sono convito che quella intrapresa dagli sviluppatori delle librerie QT sia la strada corretta. David Reveman ha avuto problemi nello sviluppo di Compiz dovuti alle lacune di Xorg (purtroppo Xgl sembra un progetto morto) e non mi sembra che abbia iniziato a by-passare Xorg ma ha cominciato a lavorare anche su Xorg (al contrario di quello che avveniva con il fork di Compiz, Beryl che implementava hack temporanei per risolvere problemi profondi).
Emmanuele
24 ago 2007 - 12:29 - #7i widget “alieni” sono widget che non hanno associata una Window sotto X. le window sono usate per gestire eventi, come ingresso/uscita del puntatore, click, grab, etc. ovviamente, implicano un round-trip quando si ridimensiona. rimuovere le finestre per ogni widget è un approccio interessante, molto “canvas-like” (ad esempio, in Clutter esiste una sola finestra - lo stage - e tutto il resto viene sintetizzato). purtroppo le gtk+ non possono rompere la compatibilità all’indietro come le QT - quindi non possiamo rimuovere le finestre da tutti i widget; magari si farà nelle gtk+ 3.0. :-)
tuttavia, rimuovere finestre non è così banale: si possono rompere invarianti come l’ordinamento degli eventi, oppure si possono introdurre tutta una serie di problemi perché quello che X dava “gratis” server-side usando una finestra per tutti i widget “reattivi” improvvisamente va costruito client-side (nel toolkit).
ricordo che X è un aggeggio scritto per macchine infinitamente meno potenti del desktop comune - o perfino di sistemi embedded come la n800 o openmoko; la soluzione è risolvere i problemi di X, non di girarci intorno, altrimenti scambi bug in X con bug nel toolkit o nelle applicazioni.
destynova
24 ago 2007 - 12:32 - #8E’ un bene e non solo per i vantaggi visivi e di prestazioni, ma il codice diventera’ ancor piu’ portabile.
La soluzione non e’ nulla di innovativo ma ha richiesto un bel po di lavoro da parte della trolltech, il lavoro sulla gestione degli eventi, prima svolto da X, ora deve essere svolto dalle qt.
Riguardo agli ultimi commenti, la trolltech e’ stata una delle aziende che piu’ ha contribuito al codice di X.org. I problemi del server grafico X sono strutturali, per risolverli dovrebbe essere ripensato da zero, dall’intera comunita’ linux e non solo dalla trolltech.
destynova
24 ago 2007 - 12:45 - #9@sirus
Come gia’ detto la trolltech ha contribuito al miglioramento di x.org, ma e’ anche una azienda con clienti paganti, non puo’ certo restare ferma ad aspettare i tempi biblici di sviluppo del server grafico.
Son d’accordo che sarebbe meglio far gestire certe cose al server grafico ma, guarda caso, sono anni che tutte le soluzioni che hanno velocizzato X si basino proprio sul suo scavalcamento o almeno sullo scavalcamento del classico modo di interagire con esso.
no_lore
24 ago 2007 - 12:48 - #10scusate l’ot ma ecco una news:
http://www.ubuntu.com/testing/tribe5
tra le news un tool grafico per configurare X!
ice
24 ago 2007 - 14:48 - #11ma io su debian mi trovo bene con un bel dpkg-reconfigure……
cmq la strada scelta da QT non mi piace, va un po contro la filosofia di collaborazione/condivisione di codice e funzioni tipico del mondo *nix
ossmlcr
24 ago 2007 - 16:05 - #12@Emmanuele
Ma sei sicuro che le Gtk+-2 non abbiano già i lightweight widget, e che solo le finestre toplevel (le GtkWindow con una GdkWindow toplevel) allocano una Window X11?
Emmanuele
24 ago 2007 - 22:45 - #13@ossmlcr:
non tutti i widget hanno una GdkWindow (il wrapper attorno alle strutture dati dipendenti dalla piattaforma) associata; contenitori e altri widget sono senza finestra, mentre i widget che devono reagire agli eventi ne hanno almeno una. per sapere se un widget ha una finestra associata basta controllare il flag GTK_NO_WINDOW.