Gå til innhold

ny OSX aktig iconbar


Anbefalte innlegg

Jeg har en stund gått og irritert meg over at det ikke finnes en sånn fæncy "standalone" OSX-aktig ikonbar for linux. De eneste jeg har funnet krever gdesklets eller (super)karamba.

Derfor begyndte jeg så smått å mekke en selv for et par dager siden. Jeg begyndte med ren Xlib implementasjon - men når det kom til å tegne pixmaps ble det bare for mye av det gode. Derfor fikk jeg heller hoppe over til GTK2... Så fikk den litt avhengigheter allikevel :-P Men ideen er at den skal kunne kjøres standalone over en lett windowmanager. Det er ikke sikkert at jeg kommer til å gjøre så mye mere med denne... vi får se hvor lenge jeg er inspirert :)

 

Uansett - etter en god del prøving og feiling av fremgangsmåter har jeg fått iconzooming til å fungere sånn rimelig... Detter er på ingen måte voldsomt fæncy - og selve baren er en stygg grå firkant i bakgrunnen. Det store målet er å få den transparent - men neste milepæl er å få til noe artig med ikonene når de blir trykket på(nå startes bare det tilknyttede programmet). Vi får se.... Her et et lite screenshot:

foobar.png

 

Hadde vært kult om noen hadde giddet å laste ned koden fra:

http://www.unik.no/~andreto/fbar/

 

Og testet om det fungerte og melde tilbake her... Har sett litt forskjellig oppførsel på noen forskjellige bokser her. For å få det hele til å fungere pakk ut og gjør ./configure; make

./src/fbar er binærfilen. Du må ha gtk2 development filene installert for å kompilere.

Fbar leser en konfigfil(~/.fbar/entries) ved oppstart. Denne filen lister pixmapfiler og binærfiler som skal kjøres når disse trykkes på. En eksempelfil ligger i src. Kopier den til ~/.fbar/ før du starter. Du må ha de gjeldene iconene og binærfilene på systemet for at ikoner skal legges til i baren.

 

Koden er på ingen måte skrevet for å være pen eller optimalisert - avogtil opplever jeg at CPU loaden tar helt av når jeg bruker den - så det er nok en del ekle saker som ikke er som de skal. Foreløpig handler det kun om å få ting til å virke og det er mange stygge hacks... så ikke se for mye på koden ;)

 

Men om du finner på å laste den ned og teste så meld tilbake evt. problemer og om du synes det fungerte greit!

Endret av kattemat
Lenke til kommentar
Videoannonse
Annonse

hehe, stilig Kattemat! :D - Jeg er ennå ikke hjemme så jeg får ikke prøvet den ut - men den skal testes når jeg er hjemme til helga nå. :]

 

- Ellers så er det jo en svakhet at ikonene blir såpass pixelerte som den GNUen der :/ - Men det er nok vanskelig å kunne kjøre en helt optimalisert metode. En merker nok ikke så mye til det når en bruker den.

 

Uansett så er det bra du tok deg arbeidet å skrive en uavhengig versjon - er som sagt ganske plagsomt å måtte installere masse ekstra programmer for å få en liten ting til å funke - det er ikke mye så i takt med *NIX tankegangen. Selv om SuperKaramba osv heldigvis ikke har hardkodet mange unødvendige ting inn :)

 

- Neste milepæl er den grå boksen ja - når du har fått vekk den kan det godt hende du får et par faste brukere :)

 

Ellers så tenkte jeg litt på config fila du bruker - du må nok standarlisere navnet litt mer, .entries sier meg ganske lite når jeg evt. tar en "ls -a". Menmen, alt i alt, godt jobba - bra du tar initativ. (alt jeg har gjort er å hacke ACPI implementasjonen til XFCE sin battery-modul slik at den virka med ECS551 maskina mi - og den har jeg ennå ikke fortalt verden om)

Lenke til kommentar

Ellers så tenkte jeg litt på config fila du bruker - du må nok standarlisere navnet litt mer, .entries sier meg ganske lite når jeg evt. tar en "ls -a". Menmen, alt i alt, godt jobba - bra du tar initativ. (alt jeg har gjort er å hacke ACPI implementasjonen til XFCE sin battery-modul slik at den virka med ECS551 maskina mi - og den har jeg ennå ikke fortalt verden om)

Takker for respons :)

 

For å unngå kornete grafikk hadde vektorgrafikk istedenfor pixmaps vært det beste... vi får se.

 

And conffila så var det noe jeg endret for versjonen jeg la opp for at det skulle være lett å teste. Endret den tilbake til det gamle nå - dvs at nå må entries fila ligge i ~/.fbar/

 

 

PS - driver med gjennomsiktighet nå(ekte gjennomsiktighet).

Endret av kattemat
Lenke til kommentar
Når det gjelder kornete grafikk så burde du også kunne sette grafikk for zoomed-bilde i configen, da ikonsett ofte kommer i flere størrelser.

Så absolutt... Men dette er en super pre-alpha versjon ;) Har bare sittet to-tre kvelder og fiklet med dette.

 

Det er MASSE options som må legges til fra det enkle til det mere sofistikerte. Koden som den er nå er kun lagd for å fungere. Alt må skrives om når ting begynner å fungere som det skal.

 

Men sånn som det er nå funker det med alle ikonstørrelser - alt blir resizet til 50x50 opp til 100x100.

Lenke til kommentar
Hva den grå linja nederst der? Er det bare 50% av linja som er gjennomsiktig? :]

Ja.

 

Ellers blir det bare hakkete og fælt når en skal zoome. X kan lage "ikke firkantede" vinduer(som jeg har her) men vinduet får kun fokus når musen beveger seg over ikke-gjennomsiktige deler. Dvs de gjennomsiktige ommrådene er ikke med i vinduet. Derfor kan en ikke tracke musebevegelse i mellom ikonene om en ikke har noe "fyll".

Tror det blir ok om en kjører farger/mønstre/kvasigjennomsiktighet på den siste biten.

Lenke til kommentar
Uff, enda en svakhet med den hatede X serveren...... :/ :(

 

Men kan du ikke på en måte få ikonet til å bli et vindu? - Eller legge en liten boks bak ikonet, som ikke vil sees uansett?

 

-- Uff, elendige X......

Da må en nok ty til pseudogjennomsiktighet... Det er jo et som blir mest brukt. Men det ser ikke så kult ut når baren får fokus og en svær firkant rundt den får bakgrunnsbildet mens det kanskje i virkeligheten ligger et (ikke root)vindu bak...

Apple skulle opensourca vindussystemet sitt ;)

Lenke til kommentar
Uff, enda en svakhet med den hatede X serveren...... :/ :(

 

Men kan du ikke på en måte få ikonet til å bli et vindu? - Eller legge en liten boks bak ikonet, som ikke vil sees uansett?

 

-- Uff, elendige X......

Da må en nok ty til pseudogjennomsiktighet... Det er jo et som blir mest brukt. Men det ser ikke så kult ut når baren får fokus og en svær firkant rundt den får bakgrunnsbildet mens det kanskje i virkeligheten ligger et (ikke root)vindu bak...

Apple skulle opensourca vindussystemet sitt ;)

Hva, er det ikke pseudogjennomsiktighet han bruker nå?

 

Trodde ikke det funket med ordentlig gjennomsiktighet [i xfree] jeg...

Endret av mariux
Lenke til kommentar

Aiaiai.. Synd at ingen starter på et skikkelig prosjekt. Eller- er jo noen som er startet, men det går så utrolig tregt. Trenger IBM eller Novell til å støtte et digert "ny x-server" prosjekt...

 

Mac sin sak bruker jo 3D kortet - du klarer ikke kjøre OS X uten et skikkelig 3D kort. Systemet er veldig bra - det jobber med vinduer som en slags type objekter, da får en endelig brukt 3Dkortet til annet enn spill.

 

Neinei, slem X server. Gammel, slem X server. -

Lenke til kommentar

Nei? Du får bumpe den:] Hehe, eller.. Jeg tar et søk / let jeg..

 

Så det går framover ja. Det er godt. Sist jeg så etter XFree alternativer så fant jeg ikke noen som var skikkelig arbeidet med.

 

Men.. Hmm, tror jeg stiller evt. spørmål i den rette tråden heller jeg. - Uansett så er jeg hjemme på fredag nå, og da skal det testes osv :]

Lenke til kommentar

xorg er forken av XFree fra før lisensskiftet, mens fd.o x-server er den nye xserveren som skal ta over ettervært. Den støtter compositioning (skygger, opengl-effekter, punktvis gjennomsiktighet og jeg vet ikke hva) og vil jobbe tett sammen med Cairo (vektortegning for X) for å skape neste generasjons desktop-backbone - iallefall for det grafiske.

Lenke til kommentar

Ok - en liten oppdatering:

 

Har nå et mønster på bakgrunnen av baren. Dette skal selvfølgelig kunne settes av brukeren etterhvert.

Nå er det også en artig liten animasjon når en trykker på et ikon.

 

foobar4.png

 

De som er interessert i å teste kan laste ned siste versjon på:

http://www.unik.no/~andreto/fbar/

 

Lag "~/.fbar/entries" filen som beskrevet i tidligere poster. Et eksempel ligger i src/ katalogen.

Endret av kattemat
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...