Projektlogg: Att utveckla en fönsterhanterare

Permalänk
Medlem

Intressant! jag kör inte linux mer än kanske en vecka om året (för att kolla hur det känns att spela med/allmän slacking på nätet) men alla förbättringar är välkomna såklart

Visa signatur

Fractal Design Define C | NH-D15 AMD | R5 5600X | TUF Gaming B550-Plus | 2x16GB Corsair DDR4@3200mhz | RTX 3060Ti | 2TB 980 Pro m.2 + 500gb 970 EVO m.2 | Steelseries APEX, Logitech G603 | Razer Blackshark Pro v2 | Dell 28" 1440p165 + Swedx 28" 2160p60 + Benq 24" 1080p60 |

Permalänk
Hjälpsam
Skrivet av anon159643:

Jag kör med större skrivbord än skärm dagligen och har gjort det länge under mängder av operativsystem.
Men kanske är det hypervisorn i mitt fall VmPlayer som fixar detta.

Misstänker att det är VmPlayer som ger dig detta.
Native har jag inte hittat något.

Visa signatur

AMD Ryzen 7 1700 | Saphire RX 5700 Pulse XT (Silent Mode) | 64 GB Kingston ECC | https://valid.x86.fr/z2ljhr | Stockkylaren | Bitfenix Whisper M 750W.
AMD Ryzen 9 5900X | AMD RX 5700 | 64 GB Micron ECC | https://valid.x86.fr/5krwxf
HTPC | https://valid.x86.fr/uuzli0 |

Permalänk
Medlem
Skrivet av star-affinity:

För övrigt en grej som stör mig i Windows — att det inte finns någon visuell indikation när ett program håller på att öppnas/läsas in.

Dyker det inte upp en program-ikon i taskbaren direkt när man öppnar ett program? Eller vilken visuell feedback vill du ha? Kan lägga till mer visuell feedback i mitt så man vet vad som händer. 👍

Skrivet av Mr_Lazy:

@JesperA hur hanterar syncen om du öppnar ett program på den ena dator och börjar jobba i det och när du sedan går till den andra och programmet finns inte ens installerat?

Inget händer, enumereringen vid inloggningen hoppar över program som inte finns. Dock finns dom alltid då jag alltid installerar allt som behövs. Om/när jag släpper WM:en publikt så får jag lägga till en annan hanterare, kanske en promt som säger till användaren att installera programmet som behövs.

Skrivet av lallassu:

Bra jobbat och kul projekt Jag kodade faktiskt en egen fönsterhanterare med Xlib som en C-uppsats på universitetet för c:a 15 år sen. Det var ett roligt projekt!

Nice 👍 Sen efter det då? Några mer äventyr i fönsterhanterar träsket?

Skrivet av riche:

Känner igen mig med att många fönsterhanterare har massa irriterande onödigt junk.

"virtuell yta som är bredare än skärmen man använder" - Jag har haft samma tanke i många år, skriver också mycket och man vill ha lite övergriplig koll på annat som händer. Ska tänka efter lite och se om jag kommer på nått annat. Har personligen fastnat i träsket där man bara "gillar läget".

Har du nån grund du tittar på eller kör du från skratch?

Vet inte om man kan kalla det för "scratch" riktigt, det mesta jag använder finns redan i Ubuntu, X, osv & sneglar på källkoden till diverse fönsterhanterare jag gillar & skriver om dom till mitt WM, mycket är ju från grunden men implementerar/hookar in i befintliga system. Mitt VM skall poängteras är extremt primitivt, går inte köra vanliga appar, eller jo, det går men är dom optimerade för tex GNOME eller KDE eller liknande så kan man säga hejdå till dom programmen, deras programfönster är extremt trasiga när dom körs i mitt, vissa visas inte alls, dom får en extremt trasig UI/GUI. Så dröjer länge (troligen aldrig sålänge detta är mer på experimentnivå än en full release) innan 3:e parts program skulle kunna köras i min VM. Så hittills har jag gjort absolut minimum för att få igång den.

Skrivet av Alotiat:

Kanske lite sidospår: Är personligen lite nyfiken på Wayland. Vet du om det att fixa dessa typer av problem? Vet att det inte kommer till Mac men sitter själv på debian och undrar vad som kommer hända med X i framtiden?

Väldigt trevlig logg. Ser fram emot de nya funktionerna!

Skrivet av rektor:

Tänk på att många Linuxdistributioner har eller planerar att gå över från X11 till Wayland.

Så du kanske vill skriva den för Wayland istället för X. Du kanske vill använda ett bibliotek också som libweston eller wlroots.
Det finns även Sway som är en i3-kompatibel fönsterhanterare byggd på Wayland.

Är inte så insatt i Wayland, det som är bra med Wayland är dåligt för mig & detta projektet, i X får man göra i princip vad fasen man vill, i X är det enkelt att läsa metadata (tex läsa xwininfo, spara i databas, modifiera & sen läsa, verkar trixigare i Wayland men kan ha fel, har inte undersökt så mycket), manipulera dessa & skriva iväg en modifierad version, mycket enklare att styra osv osv, Wayland är mycket striktare verkar det som, striktare krav på klienter & delad data mellan klienter, så just nu har jag inte den kunskapen som krävs för att implementera min WM i Wayland. Sway har ju lyckats styra fönster som dom vill, huruvida dom läser all data som krävs för mitt WM vet jag inte men på något sätt bör det gå.

Så, jag håller mig till X, som någon annan skrev så kommer inte X dö ut inom den närmsta framtiden. Så Wayland kan bli ett projekt i framtiden. Verkar ta ett tag innan Wayland har mognat ändå(?) så väntar tills dess åtminstone.

Skrivet av Obiwannabekenobi:

Cool! Det bästa sättet att lära och underhålla programmering är att programmera.

Det där med synkning är ju asgrymt!

Dumn fråga angående virtuella fönsterplacering - är inte det nästan samma sak som just virtual desktops gör och som finns tom i Win nuförtiden?

Det är nästan som virtuella desktops, fast inte riktigt, jag har också virtuella desktop (så som alla OS/WM har nuförtiden) i min WM ("WS1/WS2/WDev/NSFW"), i varje virtuellt desktop så har man möjlighet att expandera sin viewport större än skärmen. Så detta är snarare en virtuell viewport än virtuell desktop. Öppnar man massa program i ett virtuellt desktop så måste dessa överlappas för att få plats på skärmytan, med viewport scroll får man plats med mycket mer utan att behöva överlappa program, det är den stora skillnaden.

Skrivet av anon159643:

Alltid roligt med nya verktyg. Förr i tiden funderade jag mycket på detta och la ner tid, nu orkade jag ej.

Men det klassiska är att man kanske jobbar vanligt med en 4 skärmslösning, sedan ska man arbeta med en laptop som bara har en skärm och då är det problematisk hur man ska göra. Där jag ibland har gjort så att man får en ultrabred skärm där ej hela visas utan man får scrolla till vänster/höger.

Japp, det är detta jag störde mig på & därför jag började med detta projektet, sitter endel på QHD & 4K skärmar där man mår gott för man har gott om plats till tex alla sina IDE paneler/kolumner som man behöver samtidigt. Går inte replikera på laptop skärmar, finns helt enkelt för få pixlar & skala till miniatyr fungerar inte såvida man inte har super-ögon. Samma när man jobbar med multiskärm, går man tillbaka till 1 laptop så får man ju försöka böka in alla program till en skärm, blir kladdigt snabbt. Med min lösning (och det du nämnde) så stannar ju alla fönster där dom är trots att man går från tex 3 4k skärmar ner till 1 laptop skärm. Denna lösningen är långt ifrån perfekt men tycker det ändå är bättre än att tränga in 3 skärmars fönster till 1 laptopskärm, går rätt smidigt att scrolla horisontellt, speciellt på laptop där man använder trackpaden.

Skrivet av Nioreh83:

Skumt att ingen gjort en scrollbar desktop på Linux innan. Finns ju i vissa grafikkortsdrivrutiner i windows, och diverse andra appar finns för ändamålet.

Skrivet av Ratatosk:

@JesperA:
Just den där funktion med ett skrivbord större än skärmen fanns ju en gång till W95, vet inte varför man inte fått tillgång till det senare.
Populärt nu är ju virtuella skrivbord men det är inte samma sak.
Kort sagt det är en funktion jag verkligen saknat.

Nu när ni säger det så minns jag att jag hade detta en gång i tiden på 90-talet. Tror man fick upp pilar på skärmen så man kunde scrolla på samma sätt som på mitt. Man kunde nog även mappa skrollhjulsklicket till att "dra" skärmytan också. Minns dock inte vad programmet eller grafikdrivrutinen var. Om någon har mer info så säg gärna till, vore kul att se igen.

Skrivet av hookme:

Cool tråd, keep up the good work av ren nyfikenhet, är oxfile och potatisgratäng bilderna för att träna neural net?

😀 Minns inte varför jag valde att spara just dom bilderna, rätt onödigt för blir rätt hungrig varje gång jag kollar

Skrivet av anon159643:

Jag kör med större skrivbord än skärm dagligen och har gjort det länge under mängder av operativsystem.
Men kanske är det hypervisorn i mitt fall VmPlayer som fixar detta.

Japp, finns endel lösningar, vad som fungerar bäst är en smaksak men imo rätt trevligt att ha det native inbakat. 👍

Skrivet av anon78208:

Coolt! Personligen ser jag inte riktigt hur det skiljer sig så mycket från att ha flera arbetsytor, som t.ex. i GNOME där man "scrollar" mellan olika arbetsytor med SUPER+PgUp/PgDn. Enda skillnaden är väl att detta är en sorts steglös mekanism, medans GNOME, i3, Sway med mera gör samma sak stegvis. Själv gillar jag inte när fönster överlappar varandra eller bildskärmens kant och på det sättet gillar jag i3/Sway eftersom de anpassar fönster så man slipper det problemet. Blir lätt rörigt när allt ska överlappa och man har fönster som gömmer sig bakom fönster. Med det sagt så önskar jag lycka till med detta spännande projekt!

Ja, som du säger, skillnaden är i det "steglösa" vs "stegade", med stegade får du bara plats med ett begränsat antal fönster innan du måste överlappa dom, här går det lägga dom sida vid sida utan överlappning. Jag skall ge ett mer real world exempel framöver men placerar man fönstrena strategiskt, tex när man programmerar samtidigt som man läser source eller dokumentation så kan allt "vara framme" samtidigt, säg att du har 3 paneler öppna i en IDE, det är dom 3 panelerna som får plats på skärmen, sen har du dokumentation till vänster om IDE:n, så kan du scrolla lite till vänster för att se dokumentationen men ändå kanske se dom 2 vänstra panelerna i IDE:n, blir ingen överlappning, tex om du lägger dokumentationen över IDE:n & tabbar emellan så kan man alltid ha allt framme utan att något fönster försvinner bakom fokus. Du kan också tilea i mitt VM men nackdelen är ju att du måste ändå få plats med alla fönster, då kanske inte alla fönster får den storleken som dom behöver eller vad som är mest lättläst, tex i mitt exempel med 4 vertikala paneler så kan det bli rätt tight horisontellt, med mitt slipper man detta bekymret.

Jag förstår din invändning men ja, det beror ju på hur man vill lägga upp sin arbetsyta, så en smaksak 👍

Skrivet av DHead:

Grymt!

Nu kör jag ju Windows, men just denna funktion har jag saknat sedan Amiga-tiden. Fix for Windows plz!

Vad är det "officiella" namnet för en sådan funktion, om det nu finns något?

Vet inte om det finns något officiellt namn, jag har alltid kallat det för "viewport scroll" men bör finnas ett bättre namn för det, någon får gärna hojta till.

Spännande att det fanns till Amiga, har missat det, skall undersöka 👍

Skrivet av Gruarn:

Jag visste inte att jag behövde ett virtuellt skrivbord enligt funktion nr 1, men jag vet precis när/var jag skulle använda det i jobbet!

Vill du så får du gärna berätta hur du skulle använda det. Tycker jag gjort för dåliga exempel på hur detta systemet fungerar i real world exempel så vore kul att höra så jag kan testa & förmedla funktion 1 på ett bättre & tydligare sätt 😀👍

Visa signatur

Hur kan syltkakor överleva i det vilda utan ögon?

Permalänk
Avstängd

@JesperA:

Går det att ändra vad man vill tex ändra filhanteraren hur den ska se ut och hur den ska funka?

Vad är det för program som behövs för att ändra sånt?

Är det C++ eller C som gäller?

Visa signatur

Man är inte dum för att man har stavproblem.
Läs mer om min synfel Visual Snow
Om mig ----> #16970666

Permalänk
Medlem
Skrivet av superegg:

@JesperA:

Går det att ändra vad man vill tex ändra filhanteraren hur den ska se ut och hur den ska funka?

Vad är det för program som behövs för att ändra sånt?

Är det C++ eller C som gäller?

Ja, filhanteraren är ett eget bygge så går att designa precis hur man vill, var bara något jag slängde ihop för Nautilus fungerade skitdåligt (typ inget från Gnome eller andra WM:s fungerar) i min VM. Så just nu, vill man ändra utseendet så får man programmera det själv. Kommer lägga till i inställningarna så att man kan ändra utseendet (tema, border, border-storlek, border-färg, fokus färg, inactive färg osv osv osv).

Programmeringsspråk spelar inte så stor roll, finns bibliotek för allt(!). Jag har använt främst C (och Swift när jag körde i macOS) men går använda C++ också, skulle säkert gå att använda C# också med .NET Core eller kanske Mono(?). Python också troligen (edit: japp, python-xlib finns).

Så C + Xlib är en bra start om någon framöver vill in & peta i röran när jag släpper lös åbäket i framtiden (om någon ens är intresserad att testköra) (support ingår dock EJ så allt görs på egen risk)

Edit: Förresten, ta gärna en titt på https://github.com/buffet/kiwmi & https://gitlab.com/mrmessyhair/eveningwm/tree/master också, verkar ha blivit en trend att göra egna WM:s nuförtiden men dessa rekommenderas, dom är en bra start att börja med & lära sig, eveningwm är lätt att forka för er som vill experimentera lite själva

Visa signatur

Hur kan syltkakor överleva i det vilda utan ögon?

Permalänk
Avstängd
Skrivet av JesperA:

Ja, filhanteraren är ett eget bygge så går att designa precis hur man vill, var bara något jag slängde ihop för Nautilus fungerade skitdåligt (typ inget från Gnome eller andra WM:s fungerar) i min VM. Så just nu, vill man ändra utseendet så får man programmera det själv. Kommer lägga till i inställningarna så att man kan ändra utseendet (tema, border, border-storlek, border-färg, fokus färg, inactive färg osv osv osv).

Programmeringsspråk spelar inte så stor roll, finns bibliotek för allt(!). Jag har använt främst C (och Swift när jag körde i macOS) men går använda C++ också, skulle säkert gå att använda C# också med .NET Core eller kanske Mono(?). Python också troligen (edit: japp, python-xlib finns).

Så C + Xlib är en bra start om någon framöver vill in & peta i röran när jag släpper lös åbäket i framtiden (om någon ens är intresserad att testköra) (support ingår dock EJ så allt görs på egen risk)

Edit: Förresten, ta gärna en titt på https://github.com/buffet/kiwmi & https://gitlab.com/mrmessyhair/eveningwm/tree/master också, verkar ha blivit en trend att göra egna WM:s nuförtiden men dessa rekommenderas, dom är en bra start att börja med & lära sig, eveningwm är lätt att forka för er som vill experimentera lite själva

Vet du några bra youtube tutorial jag vet inte vad jag ska söka på?

Om jag fattar det rätt så kan man göra om denna hur man vill tex så den ser ut som på en Windows gör?

Visa signatur

Man är inte dum för att man har stavproblem.
Läs mer om min synfel Visual Snow
Om mig ----> #16970666

Permalänk
Medlem
Skrivet av superegg:

Vet du några bra youtube tutorial jag vet inte vad jag ska söka på?

Om jag fattar det rätt så kan man göra om denna hur man vill tex så den ser ut som på en Windows gör?
https://www.tecmint.com/wp-content/uploads/2016/06/Nautilus-File-Manager.png

Tekniskt sett kan man det, men då gäller det att sätta sig in i källkoden: https://github.com/GNOME/nautilus & läsa instruktionerna & installera dependencies & sen programmera om Nautilus så som man vill. Men att få det att se ut & fungera som Windows tar säkert en evighet att lyckas med.

Känner inte till någon YouTube tutorial för det tyvärr. Finns det inget Nautilus tema som du är nöjd med? https://www.google.com/search?q=nautilus+themes&safe=off&clie...:

Tex: http://www.linuxandubuntu.com/home/transform-your-ubuntu-into... eller liknande?

Visa signatur

Hur kan syltkakor överleva i det vilda utan ögon?

Permalänk
Skrivet av JesperA:

Dyker det inte upp en program-ikon i taskbaren direkt när man öppnar ett program? Eller vilken visuell feedback vill du ha? Kan lägga till mer visuell feedback i mitt så man vet vad som händer. 👍

Min uppfattning är att det inte dyker upp något i ”task bar” förrän precis i slutet när programmet laddat klart. Om det är något som tar tid att läsa in så kan det hända att man (har i alla fall hänt mig flera gånger) öppnar programmet en andra gång i tron att det inte startade på första försöket. Kanske bara jag som upplever detta? 🤔 Tycker i alla fall MacOS hanterar det bättre då det syns direkt i Dockan när ett program håller på att starta.

Visa signatur

• Fractal Design North | ASUS ROG Strix B650E-F | Ryzen 7 7800X3D | Radeon RX 7800 XT | 64 GB RAM | Windows 11
• Mac Pro (Mid 2010) | 6-Core Intel Xeon ”Westmere” | Radeon RX 5700 XT | 32 GB RAM | macOS 12 Monterey | Windows 10
• MacBook Pro 14" | M2 Max | 96 GB RAM | macOS 14 Sonoma

Permalänk

Som macOS-användare skulle jag vilja se en global meny. Har du funderat på det?

Visa signatur

• Sun SPARC

Permalänk
Medlem

Grymt projekt! Gillar att du verkar se på skrivbord just som ett fysiskt skrivbord.
En funktion som jag alltid stör mig på att den inte finns i Windows, som jag inte vet om det finns nån annanstans iofs.
Men jag vill iaf ha så att när man får upp en öppna/spara-prompt så ska den i första hand ger alternativ att öppna eller spara i de fönster som man redan har öppet. Inte bara default på senast använda mapp...
Antingen som en lista med mapparna, eller att man helt enkelt blir ombedd att klicka på mappen man redan har framför sig. Lite som en fysisk mapp på ett fysiskt skrivbord skulle bete sig.

Skickades från m.sweclockers.com

Permalänk
Avstängd
Skrivet av JesperA:

Är inte så insatt i Wayland, det som är bra med Wayland är dåligt för mig & detta projektet, i X får man göra i princip vad fasen man vill, i X är det enkelt att läsa metadata (tex läsa xwininfo, spara i databas, modifiera & sen läsa, verkar trixigare i Wayland men kan ha fel, har inte undersökt så mycket), manipulera dessa & skriva iväg en modifierad version, mycket enklare att styra osv osv, Wayland är mycket striktare verkar det som, striktare krav på klienter & delad data mellan klienter, så just nu har jag inte den kunskapen som krävs för att implementera min WM i Wayland. Sway har ju lyckats styra fönster som dom vill, huruvida dom läser all data som krävs för mitt WM vet jag inte men på något sätt bör det gå.

Så, jag håller mig till X, som någon annan skrev så kommer inte X dö ut inom den närmsta framtiden. Så Wayland kan bli ett projekt i framtiden. Verkar ta ett tag innan Wayland har mognat ändå(?) så väntar tills dess åtminstone.

Hanteringen av klienter i Wayland är mer strikt än i X11. Klienter i Wayland kan inte snoopa runt i andra fönster eller fånga input som matas in i andra fönster.

X11 protokollet implementeras av en display server (X.Org) och sedan körs window manager och X11 klienter i display servern.
Wayland är ett protokoll men där körs inte window managern i Wayland eller under en display server, istället så är window managern en display server och kompositör som implementerar Wayland protokollet.
Så eftersom fönster hanteraren inte är en klient så har du mer friheter än klienter som körs i din fönsterhanterare, så du kan nog läsa metadata och modifiera och sådant.

För att du ska kunna kör X11 klienter i Wayland behöver din fönsterhanterare även ladda in XWayland som är en brygga mellan Wayland och X11 så att X11 klienterna körs i XWayland som körs i din fönsterhanterare.

Wayland har en referenskompositör vid namn Weston som implementerar XWayland som en modul.

Du som skriver din fönsterhanterare för X11 kanske använder dig utav Xlib. Var då medveten om att det finns ett bibliotek vid namn Xcb tänkt som en ersättare för Xlib.

Permalänk

Hittade precis detta Ser coolt ut! Jag använder i3 själv just nu. Väldigt nybörjare och jag tycker än så länge att det är väldigt svårt att modda det som man vill ha det.

Men det jag kom på när jag såg din funktion 1 "Viewport scroll" var att jag skulle vilja ha en sån Viewport scroll i ett applikationsfönster. Så att man liksom kan scrolla i uniti det fönstert.

Då skulle man kunna ha sin kod på halva skärmen och dokument och webläsare på halva fönstret, men att man kan röra sig genom att scrolla.

Hoppas jag var tydlig nog svårt att beskriva sånt här med ord xD

EDIT: Finns det ett sätt att öppna web appar som de vore clienter? Jag tänker mest på outlook. Det finns ju inte till linux, men de finns i webben och jag måste ha det för jobbet. Vore skönt att se det fönstret som ett eget fönster.

Permalänk
Avstängd
Skrivet av JesperA:

Tekniskt sett kan man det, men då gäller det att sätta sig in i källkoden: https://github.com/GNOME/nautilus & läsa instruktionerna & installera dependencies & sen programmera om Nautilus så som man vill. Men att få det att se ut & fungera som Windows tar säkert en evighet att lyckas med.

Känner inte till någon YouTube tutorial för det tyvärr. Finns det inget Nautilus tema som du är nöjd med? https://www.google.com/search?q=nautilus+themes&safe=off&clie...:

Tex: http://www.linuxandubuntu.com/home/transform-your-ubuntu-into... eller liknande?

Ah, tack ska undersöka det lite mer när jag få last lite mer tid.

Visa signatur

Man är inte dum för att man har stavproblem.
Läs mer om min synfel Visual Snow
Om mig ----> #16970666

Permalänk
Skrivet av DHead:

Grymt!

Nu kör jag ju Windows, men just denna funktion har jag saknat sedan Amiga-tiden. Fix for Windows plz!

Vad är det "officiella" namnet för en sådan funktion, om det nu finns något?

Wow. Det kan du fetglömma. Finns en anledning att han gör detta för linux.

Permalänk
Medlem

@rektor: De som gör Sway, Way-cooler och en annan gick ihop sig och skrev deras egna Wayland compositor.

Håller sjlälv ett öga på vad som händer i.o.m wayland kan bli riktigt bra för framtiden om det lyckas.

@alvarlagerlof: Hört om att det finns Tiliing "window managers" till ~Windows 7.
Men det är tilläg till windows egna.

Visa signatur

Rota3: Ryzen 5600 - 32GB - Radeon RX 7600 - Kingston NV200 2TB - Fractal Design R3 - EVGA Supernova 750W

Permalänk
Medlem

SynergyOS? de var nytt för mig, måste googla påt

jag kör annars Synergy som är en Software KVM typ, skit nöjd med den specielt då den fungerar över olika OS osv

Visa signatur

|Workstation: AMD Ryzen 9 7900X 4.7GHz | ASRock X670E | AMD Radeon 7900 XT | 32GB DDR5 | NVMe 2.0TB | HDD 4.0TB |
|VMware rig: AMD Threadripper 2920x | ASUS PRIME X399-A | 24GB DDR4 | 10TB Storage |
|HTPC: AMD Ryzen 3 2200G 3.7 GHz | Gigabyte B450M DS3H | Radeon Vega 8 | 8GB RAM | SSD 120GB | *Test rig för div Linux distar, drivers m.m.

Permalänk
Medlem
Skrivet av star-affinity:

Min uppfattning är att det inte dyker upp något i ”task bar” förrän precis i slutet när programmet laddat klart. Om det är något som tar tid att läsa in så kan det hända att man (har i alla fall hänt mig flera gånger) öppnar programmet en andra gång i tron att det inte startade på första försöket. Kanske bara jag som upplever detta? 🤔 Tycker i alla fall MacOS hanterar det bättre då det syns direkt i Dockan när ett program håller på att starta.

Japp, då hänger jag med, i mitt så spawnas app ikonen i taskbaren (mitten av top menyn) direkt i väntan på fönstret, det går att se i 1:25 in i senaste videon jag postade, där spawnas ikonen direkt & typ en sekund senare öppnas programfönstret (ser nu att taskbaren i filmen är extremt buggig men aja, får fixa det sen):

Så, jag har en viss visuell representation att programmet är på väg att laddas, det är åtminstone en feedback på att man klickat för att starta appen, det saknas dock en progress/status visuell feedback så det kanske är något jag skall lägga till för att vara extra tydlig?

Skrivet av spaceslee:

Som macOS-användare skulle jag vilja se en global meny. Har du funderat på det?

Japp, gillar detta i macOS (& i tex Ubuntu fast där har dom valt en väldigt udda behaviour så....), jag har funderat på det, dock vet jag inte hur jag skall få plats. Jag använder ju top baren som en taskbar istället för att använda tex en dock(a), gör lösa med en toggle mellan meny & taskbar men det är för tungrott, har du ett förslag på en snygg & enkel lösning så skall jag försöka lägga till en global menu, tillsvidare så får det vara som det är nu, tyvärr.

Skrivet av ISbit:

Grymt projekt! Gillar att du verkar se på skrivbord just som ett fysiskt skrivbord.
En funktion som jag alltid stör mig på att den inte finns i Windows, som jag inte vet om det finns nån annanstans iofs.
Men jag vill iaf ha så att när man får upp en öppna/spara-prompt så ska den i första hand ger alternativ att öppna eller spara i de fönster som man redan har öppet. Inte bara default på senast använda mapp...
Antingen som en lista med mapparna, eller att man helt enkelt blir ombedd att klicka på mappen man redan har framför sig. Lite som en fysisk mapp på ett fysiskt skrivbord skulle bete sig.

Skickades från m.sweclockers.com

Det skulle nog gå att lösa genom att antingen alltid ha alla öppna views sparade i en array någonstans & läsa från den i "Spara som" promten, eller helt enkelt lägga en canvas över hela skärmen "Spara som" promten är aktiv & mappa kordinationerna till mappen man klickar på (fast då kommer man inte åt mapparna som ligger bakom andra fönster). Får undersöka saken, behöver ändå vidare-utveckla min filhanterare då den saknar i princip all funktionalitet (snickrade bara ihop Filhanteraren för att kunna demonstrera vissa andra funktioner, tex encoding exemplet) så jag har bara gjort absolut minimum till vad som krävts, så hittar jag ett smidigt sätt att lägga till ditt förslag så fixar jag det 👍

Skrivet av Slweedlen:

Hittade precis detta Ser coolt ut! Jag använder i3 själv just nu. Väldigt nybörjare och jag tycker än så länge att det är väldigt svårt att modda det som man vill ha det.

Men det jag kom på när jag såg din funktion 1 "Viewport scroll" var att jag skulle vilja ha en sån Viewport scroll i ett applikationsfönster. Så att man liksom kan scrolla i uniti det fönstert.

Då skulle man kunna ha sin kod på halva skärmen och dokument och webläsare på halva fönstret, men att man kan röra sig genom att scrolla.

Hoppas jag var tydlig nog svårt att beskriva sånt här med ord xD

EDIT: Finns det ett sätt att öppna web appar som de vore clienter? Jag tänker mest på outlook. Det finns ju inte till linux, men de finns i webben och jag måste ha det för jobbet. Vore skönt att se det fönstret som ett eget fönster.

Angående funktion 1. Det du beskriver går tekniskt sett att göra idag (i alla operativsystem(?)), bara öka bredden på sin canvas till att vara större än fönstret & sen maska bort överflödet. Utvecklare har dock valt att inte göra på detta sättet, antar att många inte tycker det är användarvänligt, men jag håller med dig, jag/vi som inte föraktar scrollning skulle nog gilla om ditt förslag implementerades mer, eller att användarna hade valmöjlighet att slå på funktionen i diverse appar, speciellt i IDE:s på små skärmar skulle detta vara användbart.

Jag skulle kunna lägga till det i mina program men då blir nog lite kluttrigt, blir ju dubbla horisontella scroll funktioner då, både i viewport & i program. Kan testa & se om det fungerar.

Angående web appar. Är inte så svårt att skapa webViews, tror Slack kör via webViews (gjorde det innan iaf, kanske konverterat till native nu), jag kan utveckla ett program som det går välja vilken web app man skall köra. Men det finns ju rätt bra lösningar på det redan, kanske inte är 100% så som du vill ha det men med tex Epiphany har jag för mig att man kan installera som webbapp också så man kör det som eget program/fönster, såvida dom inte tagit bort den möjligheten. Isåfall skulle du ju då kunna använda outlook som en standalone app.

Skrivet av WDac:

SynergyOS? de var nytt för mig, måste googla påt

jag kör annars Synergy som är en Software KVM typ, skit nöjd med den specielt då den fungerar över olika OS osv

Japp, som sagt, det är ett dåligt namn jag valt, därför jag bad om bättre förslag i ett tidigare inlägg 👍😀 För många tänker nog på Synergy. Så, om någon har ett bättre namn, så säg till, vore kul med ett namn som inte krockar med något annat, men jag kommer inte på något vettigt.

Visa signatur

Hur kan syltkakor överleva i det vilda utan ögon?

Permalänk

Bra update!

Skrivet av JesperA:

Japp, gillar detta i macOS (& i tex Ubuntu fast där har dom valt en väldigt udda behaviour så....), jag har funderat på det, dock vet jag inte hur jag skall få plats. Jag använder ju top baren som en taskbar istället för att använda tex en dock(a), gör lösa med en toggle mellan meny & taskbar men det är för tungrott, har du ett förslag på en snygg & enkel lösning så skall jag försöka lägga till en global menu, tillsvidare så får det vara som det är nu, tyvärr.

Jag är ju en fan av dockan...

Men, det beror ju lite på. Om du vill ha allting i samma bar så kan det bli svårt. Man kan ju argumentera att aktivitetsfältet uppe till höger i macOS är en taskbar för utvalda program. Om man skulle inkludera alla där? Du behöver ju inte ha ett item per spawnad instans, utan ett per applikation. Om man hovrar över får man fram de instanser som finns.

Om vi tänker oss att alla program har någon form av kommunikationsinterface som definierar vad de ska ge ut och ta in för information, så kan den rutan visa exakt det. Här kan man visa CPU-användning (om du kan lösa det per instans, det borde går att göra ganska lätt tycker jag). Endast de som har ett sådant interface definierat med en icke-tom mängd inputs/outputs bör synas, och inte alla systemprocesser.

Typ:

Terminal:
Output:
CPU: 2 %
RAM: 3 %
Kommando: dd if=/home/jesper/img of=/dev/disk2
Input:
Stoppa kommando

Bluetooth service:
Output / [Input]:
Status: på
Enheter:
Hörlurar [koppla från]
Tangentbord [koppla från]
Mus [koppla från]

Coreaudio:
Output: Nuvarande volym
Input: Volym

Jag kan köpa argumentet att det blir lite komplext, men jag tycker det är en ganska ren lösning.

Visa signatur

• Sun SPARC

Permalänk
Skrivet av JesperA:

Angående funktion 1. Det du beskriver går tekniskt sett att göra idag (i alla operativsystem(?)), bara öka bredden på sin canvas till att vara större än fönstret & sen maska bort överflödet. Utvecklare har dock valt att inte göra på detta sättet, antar att många inte tycker det är användarvänligt, men jag håller med dig, jag/vi som inte föraktar scrollning skulle nog gilla om ditt förslag implementerades mer, eller att användarna hade valmöjlighet att slå på funktionen i diverse appar, speciellt i IDE:s på små skärmar skulle detta vara användbart.

Jag skulle kunna lägga till det i mina program men då blir nog lite kluttrigt, blir ju dubbla horisontella scroll funktioner då, både i viewport & i program. Kan testa & se om det fungerar.

Angående web appar. Är inte så svårt att skapa webViews, tror Slack kör via webViews (gjorde det innan iaf, kanske konverterat till native nu), jag kan utveckla ett program som det går välja vilken web app man skall köra. Men det finns ju rätt bra lösningar på det redan, kanske inte är 100% så som du vill ha det men med tex Epiphany har jag för mig att man kan installera som webbapp också så man kör det som eget program/fönster, såvida dom inte tagit bort den möjligheten. Isåfall skulle du ju då kunna använda outlook som en standalone app.

Tack för tipset om webViews! Får kolla på detta.
Angående mitt förslag på funktion 1 så var det bara en tanke jag fick Väldigt intressant projekt du har på G. Testar du så ser jag fram emot att se en demo eller nått framöver om det blir något användbart

EDIT: Såg att det diskuterades lite om att ha borders på fönster där man kunde justera höger/vänster/upp/ner för sig. Detta går redan göra i i3. Man kan till och med ställa in så att fönstret får olika färger beroende på om man har inställt att "fönster split" ska ske horisontelt eller vertikalt.

Permalänk
Medlem
Skrivet av JesperA:

Japp, som sagt, det är ett dåligt namn jag valt, därför jag bad om bättre förslag i ett tidigare inlägg 👍😀 För många tänker nog på Synergy. Så, om någon har ett bättre namn, så säg till, vore kul med ett namn som inte krockar med något annat, men jag kommer inte på något vettigt.

JesA-OS
FlexiOS
AequaliterOS
VersatileOS

??

Visa signatur

|Workstation: AMD Ryzen 9 7900X 4.7GHz | ASRock X670E | AMD Radeon 7900 XT | 32GB DDR5 | NVMe 2.0TB | HDD 4.0TB |
|VMware rig: AMD Threadripper 2920x | ASUS PRIME X399-A | 24GB DDR4 | 10TB Storage |
|HTPC: AMD Ryzen 3 2200G 3.7 GHz | Gigabyte B450M DS3H | Radeon Vega 8 | 8GB RAM | SSD 120GB | *Test rig för div Linux distar, drivers m.m.

Permalänk

OlympiskaOS

Permalänk

Eller bara fönster. Här är en logga du får helt gratis

(Icke att förknippa med Windows )

Visa signatur

• Sun SPARC

Permalänk
Medlem

Tänkte själv nåt i stil med RymdPlats en plats för att ha all rymd

eller rum för all plats

Visa signatur

Rota3: Ryzen 5600 - 32GB - Radeon RX 7600 - Kingston NV200 2TB - Fractal Design R3 - EVGA Supernova 750W

Permalänk
Medlem

Sorry, hade tappat lusten med projektet senaste veckorna, brukar bli så varje gång jag är "klar" med det jag ville göra (dom 3 funktionerna), var sjukt drygt senaste tiden efter att jag flyttade över projektet till Linux & samtidigt utvecklade i Linux. Med 138+934840724230472 kompileringar per dag tappar man lusten rätt snabbt.

Men skall försöka sätta igång med projektet igen, är sugen på att göra lite mer åt designen, får man ett litet avbrott från programmeringen åtminstone.

Råkade beställa hem en skärm också (som tyvärr inte mår så bra) så det har minskat lite av behovet att köra med en horisontell scrollad viewport när skärmen har över 5000 pixlar till godo på bredden

Efter testkörningen så framgår det ganska tydligt att om jag använder ultrawide skärmen, ställer upp massa fönster, sen loggar in på en dator med 16:9/10 skärm så får program-fönstren trängas som fasen, hade aldrig någonsin tänkt skaffa mig en ultrawide så detta har inte varit ett problem innan, alla program skalades om korrekt när man loggade in på en annan mindre eller större skärm. Ultrawide skärmen har dock 2.5ggr fler pixlar på bredden än min bärbara så att få fönstren att förminska sig 2.5x på bredden när man går över till 16:9/10 skärmarna gör saker & ting rätt tight:

Uppställning på 5K skärmen: (länkar istället för bäddar in, varning, full upplösning)
https://i.imgur.com/osRj4Bs.jpg

Resulterar i följande på MPB inlogg:

"Encode" programmet skalas inte om i närheten av korrekt, var bara ett hastverk jag slängde ihop snabbt för att kunna demo:a, har endel childwindow med fixerad storlek som inte skalar om (när dom flesta andra förlitar sig på %). Dom andra programmen fungerar väl okej, men blir alldeles för smala (även om % av bredden på skärmen är helt korrekt i konverteringen).

Jag får helt enkel göra en skalnings/aspect-ratio policy, antingen om man ställer upp fönstren på en ultrawide så används ca 2X bredd faktor, alltså när man loggar in på 16:X skärmen så syns bara 1X, resterande 1X är utanför skärmen & får scrollas till. Lite klunkig lösning.

Annars får jag helt stänga av horisontella scrollen om man loggar in på en skärm som har bredare aspect än 16:9/10.

Har någon ett förslag på aspect-ratio policy hantering så säg gärna till, rätt klurigt, vill inte slita ur mig allt hår för att lösa det

Ingedera är en snygg lösning så, får se hur jag gör.

Tack så mycket för alla namnförslagen, det uppskattas 😀👍👌 Får se vad jag döper om det till.

Har fått PM & mail, har bara svarat på vissa, ursäkta om jag inte svarat till er som skickat, har inte ignorerat med mening utan jag har läst allt men i princip alla frågor är samma så tänkte svara på alla samtidigt i ett framtida inlägg. Hoppas det är okej. Svarar på dom inläggen jag inte svarat på i tråden också i ett kommande inlägg, hoppas det är okej!

Endel har frågat "bakom kulisserna" frågor, jag tänkte att jag skulle gå igenom dom snart, tex hur mitt middleware fungerar, dess policy, synkningen, klient-hantering, säkerhets-hantering, databas, hur jag mappar fönstren i korrekt ordning (så dom inte snor fokus) osv osv osv osv.

Vad föredrar ni? Att jag fortsätter med dessa långa flummiga inläggen eller skall jag försöka göra en video, nästan som en tutorial där jag går igenom hur saker fungerar? Hur metadata-servern tar emot data & lagrar data?

Ursäkta att jag gjort färre uppdateringar än vad jag planerade när jag startade tråden men min motivering till projektet har varierat kraftigt senaste veckorna, kommer igång snart igen

Återkommer!

Visa signatur

Hur kan syltkakor överleva i det vilda utan ögon?

Permalänk

Video! Gör en video av allt-