Re: Surprise - New Post on the GtkD Coding Blog

2021-09-10 Thread Ron Tarrant via Digitalmars-d-announce
Another new post, a continuation of the GTK/GIO Application 
discussion, can be found here: 
https://gtkdcoding.com/2021/09/10/0113-gtk-gio-application-ids-signals.html




Re: Surprise - New Post on the GtkD Coding Blog

2021-09-09 Thread Guillaume Piolat via Digitalmars-d-announce

On Thursday, 9 September 2021 at 15:22:39 UTC, Adam D Ruppe wrote:

On Thursday, 9 September 2021 at 08:52:34 UTC, Dukc wrote:
I thought that the Wayland architecture is in some way 
fundamentally better than X architecture


That's what the wayland propagandists like to say...


Interesting details, thanks.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-09 Thread Adam D Ruppe via Digitalmars-d-announce

On Thursday, 9 September 2021 at 08:52:34 UTC, Dukc wrote:
I thought that the Wayland architecture is in some way 
fundamentally better than X architecture


That's what the wayland propagandists like to say (now... earlier 
they'd play up the similarities to make the "rewrite it" pill 
easier to swallow), but it isn't really true. Wayland's graphics 
system is a subset of X's - it takes the direct rendering 
component and leaves the others out - then combines the X 
compositor, X window manager, and X server into one component, 
when they then call the wayland compositor.


But it is important to realize that direct rendering clients on X 
- which has been around since before Wayland was born - already 
work essentially the same way. The client gets a gpu buffer and 
does opengl rendering to it. Then they signal the display manager 
- whether X server or Wayland compositor - to show the buffer on 
screen and they do it when the time is right (e.g. vblank 
syncing).


X does support other models too, but this is a good thing because 
it allows backward compatibility, better network efficiency, and 
simpler applications to just do simpler things too. Removing 
features people actually use in the real world is rarely that 
beneficial.


So what is the major difference for graphics architecture? In X, 
the compositor is an entirely optional component. In Wayland, it 
is integrated into the display manager. That's the only real 
difference.


What is a compositor? It is responsible for taking the images 
from each individual application and layering them on top of each 
other if you want additional scaling, transformation (like 
rotation), or transparency in between windows. Inside an 
individual window, you have all those things regardless of 
compositor. Traditional X servers can layer images without 
transparency or external scaling without any trouble at all. It 
only comes in when you want those fancier graphics things to 
happen without cooperation between windows. If you're thinking 
"that's not actually all that useful anyway", yeah me too. I've 
never used a compositor on my own system at all.


Wayland claims that integrating this optional component provides 
a  performance benefit by avoiding the cost of the additional 
context switch and synchronization. There's one place where 
that's legitimately true: exposing a window on a remote network 
connection. With core X, the server sends an expose event, then 
the client sends back a blit command from its buffer, or the 
drawing commands if it doesn't have one. Due to network latency, 
this can results in some visual lag and some flash as the server 
paints over a simple background color, then the client paints 
over it again.


Wayland, of course, sees zero change here because it has zero 
support for this operation. Its network support - to the extent 
that there is any at all - is more like VNC screen share than X's 
remote commands.


Anyway, even locally, that context switch thing is technically 
true but also almost certainly irrelevant since that cost is 
insignificant next to the time spent waiting for the vsync anyway 
if you use the direct rendering facility.


It has a little more truth when comparing non-direct-rendering 
clients, but again Wayland sees zero benefit here because it 
simply has zero support for these use cases at all. Those 
programs just plain don't work. They must be rewritten to target 
Wayland which means they'd be forced to switch to a direct render 
system. But if you're rewriting the application anyway, you could 
just port the X application to the direct render infrastructure 
too.


Anyway, just for background, since a compositor works with these 
older style applications a bit differently - those clients are 
not written with the extension apis in mind and assume they are 
going directly to the screen (well actually there's non-DRI 
clients that sync to double buffers too, you can render to 
pixmaps in the traditional api and blit it over (all core X 
functionality there) with a sync trigger which was provided as an 
extension in 1991, or you can use the XRender extension which 
provides an explicit double buffer function, which was provided 
as an extension in 2000) - the compositor intercepts the final 
draw to screen and redirects it to another buffer, then does the 
alpha blend etc on that before getting to the actual screen. It 
may need to guess which draws to screen are supposed to be 
immediate and which are already buffered and synced by the 
application which can introduce a bit of additional lag; it might 
vsync twice, for example. This is rare in practice, but when the 
implementation gets it wrong, you do get either a missed frame or 
mid-frame screen tear.


But like that's an older API being used on a buggy 
implementation. Again, if your fix is to rewrite the application 
anyway, you can just use the different api and/or fix the bug in 
your existing implementation. There's no real world benefit. 

Re: Surprise - New Post on the GtkD Coding Blog

2021-09-09 Thread Dukc via Digitalmars-d-announce
On Wednesday, 8 September 2021 at 19:35:21 UTC, Adam D Ruppe 
wrote:
The short version is the wayland devs were hyperfocused on one 
use case and missed the big picture. This led them to wrongly 
believe that the majority of X is completely useless legacy 
bloat, so instead of patching up the one use case, they threw 
it all out.


[snip the bit longer version]


I thought that the Wayland architecture is in some way 
fundamentally better than X architecture, the same way D 
templates are fundamentally better than imitating them with a 
macro preprocessor, C or otherwise.


But I think you said that it was not about anything that required 
a redesign from ground up. Like, redesigning the whole Phobos 
because `Algebraic` sucks instead of adding `SumType` would be 
our analogy of what Wayland devs did.


I have to study differences in their approach more before I 
decide which I personally prefer.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-08 Thread Adam D Ruppe via Digitalmars-d-announce

On Tuesday, 7 September 2021 at 12:29:14 UTC, Dukc wrote:

On Friday, 3 September 2021 at 18:52:13 UTC, Adam D Ruppe wrote:

(i loathe and despise wayland but ill try not to rant)


Have you written more about this on your blog?


I have not (well not directly anyway, wayland flamewars is 
one of the things that directly inspired this post: 
http://dpldocs.info/this-week-in-d/Blog.Posted_2021_03_08.html#adam's-rant ).


The short version is the wayland devs were hyperfocused on one 
use case and missed the big picture. This led them to wrongly 
believe that the majority of X is completely useless legacy 
bloat, so instead of patching up the one use case, they threw it 
all out.


...then they have spent 13 years slowly reinventing it doing 
extension after extension and revision after revision after 
revision, and still haven't actually even reliably fixed the one 
issue they complained about... while X actually did patch it up 
if you opt into it (via the dri2 and sync extensions) and it does 
a pretty good job. They also bring up spurious security 
complaints - which have been around since the 90's btw but never 
materialized into a real problem - which are also patched via X 
extensions or nested servers. It could certainly be better but a 
version 1.1 or 2.0 of the security extension could realistically 
fix that up, no need to throw everything out. (Notice how 
Microsoft made similar changes in Windows without a significant 
breakage of backward and interoperation compatibility.)


So they broke everything for no benefit. Again. It is just like 
the broken audio stuff.


And then it really annoys me that the wayland proponents are 
rarely well educated on X, saying things that are just untrue. So 
that ups the flamewars to 11.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-08 Thread Ron Tarrant via Digitalmars-d-announce

On Tuesday, 7 September 2021 at 23:28:00 UTC, Imperatorn wrote:


Welcome back! 


Thanks, Imperatorn.

BTW, if anyone has questions about any of the articles, GtkD 
Coding has a brand-spanking new commenting feature.




Re: Surprise - New Post on the GtkD Coding Blog

2021-09-07 Thread Imperatorn via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:
Has it really been 15 months since I last posted an article? 
Um, yes. Yes, it has.


[...]


Welcome back! 


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-07 Thread H. S. Teoh via Digitalmars-d-announce
On Tue, Sep 07, 2021 at 12:29:14PM +, Dukc via Digitalmars-d-announce wrote:
> On Friday, 3 September 2021 at 18:52:13 UTC, Adam D Ruppe wrote:
> > (i loathe and despise wayland but ill try not to rant)
> 
> Have you written more about this on your blog? I have read more than
> one piece that wishes good riddance of X in favour of Wayland, I'd
> like to read something about the "but" side.

I for one will *not* be happy about X being dropped in favor of Wayland,
esp. since the latter is not (yet?) at feature parity (or better) with
X.


T

-- 
Right now I'm having amnesia and deja vu at the same time. I think I've 
forgotten this before.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-07 Thread Dukc via Digitalmars-d-announce

On Friday, 3 September 2021 at 18:52:13 UTC, Adam D Ruppe wrote:

(i loathe and despise wayland but ill try not to rant)


Have you written more about this on your blog? I have read more 
than one piece that wishes good riddance of X in favour of 
Wayland, I'd like to read something about the "but" side.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-06 Thread bauss via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:
Has it really been 15 months since I last posted an article? 
Um, yes. Yes, it has.


I hope I haven't completely lost my good will here in the 
D-lang community. I'm feeling better now, the medication seems 
to be working, and I've got a new article... well, it was 
already in the works last year when I stopped posting, but I've 
edited the heck out of it and hopefully it's up to my usual 
standards.


At the top of the article, I ask whether or not anyone is still 
interested in reading articles about GtkD 3.9 (Mike Wey 
released GtkD 4 a couple of weeks ago) and I explain why I'm 
not all that keen on making the transition. Please let me know 
in comments (Yes, GtkD Coding now has comments) if you think 
it's still worth writing articles centred around 3.9.


Thanks.

Here's the link: 
https://gtkdcoding.com/2021/09/03/0112-gtk-gio-application-barebones.html


Good to see another post :)

Even tho I've still not used GtkD yet, I've still learned a few 
things from your blog posts over the years and it'll definitely 
be a help when/if I ever decide to use it.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-06 Thread Ron Tarrant via Digitalmars-d-announce

On Monday, 6 September 2021 at 01:59:10 UTC, Joel wrote:
Great to hear from you again. I've GUI programs that I use 
every day (a diary program, and a Bible program). Also 
sometimes use a GUI Money program. I really appreciated your 
help.


Glad to be of help, Joel.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-06 Thread M.M. via Digitalmars-d-announce

On Saturday, 4 September 2021 at 11:50:44 UTC, Mike Wey wrote:

On 03-09-2021 20:42, M.M. wrote:
I just recently visited your blog, and was wandering whether 
it's over now... I also visited gtkd website, and was 
wandering whether it's over now (the website still shows a 
wrapper for GTK 3.24).


Happy to see you are back and well. I wonder where did you 
learn about a new gtkD release? Anyway, on the long run, I 
guess covering GTK 4 will be very welcome.


The GTK 4 version still needs work and isn't released yet.
I currently don't have the time to work on it, but i hope i am 
able to resume working on it later this year.


Glad to hear you still have some work for gtkd on mind. (I recall 
your announcement along the lines of seeking someone to step-in 
for the help with gtkd.) Given the success of gtkd, it would be a 
pity if gtk4 did not get into it. Good luck finding time (and 
joy) to work on it. I appreciate the work.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-05 Thread Joel via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:
Has it really been 15 months since I last posted an article? 
Um, yes. Yes, it has.


I hope I haven't completely lost my good will here in the 
D-lang community. I'm feeling better now, the medication seems 
to be working, and I've got a new article... well, it was 
already in the works last year when I stopped posting, but I've 
edited the heck out of it and hopefully it's up to my usual 
standards.


At the top of the article, I ask whether or not anyone is still 
interested in reading articles about GtkD 3.9 (Mike Wey 
released GtkD 4 a couple of weeks ago) and I explain why I'm 
not all that keen on making the transition. Please let me know 
in comments (Yes, GtkD Coding now has comments) if you think 
it's still worth writing articles centred around 3.9.


Thanks.

Here's the link: 
https://gtkdcoding.com/2021/09/03/0112-gtk-gio-application-barebones.html


Great to hear from you again. I've GUI programs that I use every 
day (a diary program, and a Bible program). Also sometimes use a 
GUI Money program. I really appreciated your help.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-05 Thread Ron Tarrant via Digitalmars-d-announce

On Saturday, 4 September 2021 at 11:50:44 UTC, Mike Wey wrote:

The GTK 4 version still needs work and isn't released yet.
I currently don't have the time to work on it, but i hope i am 
able to resume working on it later this year.


Just FYI, don't hurry back to it on my account. :)

The only explanation I can find for thinking it was out is that I 
must have seen (must have saw?) a gtk4 download link and misread 
it.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-05 Thread Ron Tarrant via Digitalmars-d-announce

On Saturday, 4 September 2021 at 11:50:44 UTC, Mike Wey wrote:


The GTK 4 version still needs work and isn't released yet.
I currently don't have the time to work on it, but i hope i am 
able to resume working on it later this year.


Thanks for the update, Mike. I still haven't found the link that 
led me to believe it was already out. Sorry, all, to be 
misleading.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-04 Thread Mike Wey via Digitalmars-d-announce

On 03-09-2021 20:42, M.M. wrote:
I just recently visited your blog, and was wandering whether it's over 
now... I also visited gtkd website, and was wandering whether it's over 
now (the website still shows a wrapper for GTK 3.24).


Happy to see you are back and well. I wonder where did you learn about a 
new gtkD release? Anyway, on the long run, I guess covering GTK 4 will 
be very welcome.


The GTK 4 version still needs work and isn't released yet.
I currently don't have the time to work on it, but i hope i am able to 
resume working on it later this year.


--
Mike Wey


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-04 Thread Ron Tarrant via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:

(Yes, GtkD Coding now has comments)


And now it does again.

Thanks for all the good wishes, guys. It's good to be back.

On Friday, 3 September 2021 at 18:42:25 UTC, M.M. wrote:
Happy to see you are back and well. I wonder where did you 
learn about a new gtkD release?


I found something about it yesterday, but can't find it now. Very 
odd. If/when I do come across it again, I'll reply to this thread 
again.


On Friday, 3 September 2021 at 18:42:25 UTC, M.M. wrote:
Anyway, on the long run, I guess covering GTK 4 will be very 
welcome.


Just to be clear, I was planning to just continue with coverage 
of GtkD 3. Please let me know if you're for that.


On Friday, 3 September 2021 at 18:52:13 UTC, Adam D Ruppe wrote:
so if it isn't gtk's own ideology, it is now the lowest common 
denominator on linux.


(i loathe and despise wayland but ill try not to rant)


It's good to know I'm not the only one! :)

On Friday, 3 September 2021 at 20:31:04 UTC, Ferhat Kurtulmuş 
wrote:
Nice to know you are fine and active. Î was about to ask forum 
that what happened to Ron. Best wishes.


Thanks, Ferhat.




Re: Surprise - New Post on the GtkD Coding Blog

2021-09-03 Thread Ferhat Kurtulmuş via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:
Has it really been 15 months since I last posted an article? 
Um, yes. Yes, it has.


[...]
Nice to know you are fine and active. Î was about to ask forum 
that what happened to Ron. Best wishes.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-03 Thread Adam D Ruppe via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:

https://gtkdcoding.com/2021/09/03/0112-gtk-gio-application-barebones.html


"GTK team dropped window position handling"

im p sure the wayland system either doesn't support it or 
STRONGLY discourages it if it was added in an extension.


so if it isn't gtk's own ideology, it is now the lowest common 
denominator on linux.


(i loathe and despise wayland but ill try not to rant)


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-03 Thread M.M. via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:
Has it really been 15 months since I last posted an article? 
Um, yes. Yes, it has.


I hope I haven't completely lost my good will here in the 
D-lang community. I'm feeling better now, the medication seems 
to be working, and I've got a new article... well, it was 
already in the works last year when I stopped posting, but I've 
edited the heck out of it and hopefully it's up to my usual 
standards.


At the top of the article, I ask whether or not anyone is still 
interested in reading articles about GtkD 3.9 (Mike Wey 
released GtkD 4 a couple of weeks ago) and I explain why I'm 
not all that keen on making the transition. Please let me know 
in comments (Yes, GtkD Coding now has comments) if you think 
it's still worth writing articles centred around 3.9.


Thanks.

Here's the link: 
https://gtkdcoding.com/2021/09/03/0112-gtk-gio-application-barebones.html


I just recently visited your blog, and was wandering whether it's 
over now... I also visited gtkd website, and was wandering 
whether it's over now (the website still shows a wrapper for GTK 
3.24).


Happy to see you are back and well. I wonder where did you learn 
about a new gtkD release? Anyway, on the long run, I guess 
covering GTK 4 will be very welcome.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-03 Thread Ron Tarrant via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:

(Yes, GtkD Coding now has comments)
It did last time I looked, but somehow they've disappeared. I'm 
too tired to sort it out today, but I'll do my best to get this 
sorted out in the morning.


Thanks for your patience.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-03 Thread Ron Tarrant via Digitalmars-d-announce

On Friday, 3 September 2021 at 16:10:39 UTC, Mike Parker wrote:

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:
Has it really been 15 months since I last posted an article? 
Um, yes. Yes, it has.


Good to see you back, Ron.


Thanks, Mike.


Re: Surprise - New Post on the GtkD Coding Blog

2021-09-03 Thread Mike Parker via Digitalmars-d-announce

On Friday, 3 September 2021 at 15:47:41 UTC, Ron Tarrant wrote:
Has it really been 15 months since I last posted an article? 
Um, yes. Yes, it has.


Good to see you back, Ron.


Surprise - New Post on the GtkD Coding Blog

2021-09-03 Thread Ron Tarrant via Digitalmars-d-announce
Has it really been 15 months since I last posted an article? Um, 
yes. Yes, it has.


I hope I haven't completely lost my good will here in the D-lang 
community. I'm feeling better now, the medication seems to be 
working, and I've got a new article... well, it was already in 
the works last year when I stopped posting, but I've edited the 
heck out of it and hopefully it's up to my usual standards.


At the top of the article, I ask whether or not anyone is still 
interested in reading articles about GtkD 3.9 (Mike Wey released 
GtkD 4 a couple of weeks ago) and I explain why I'm not all that 
keen on making the transition. Please let me know in comments 
(Yes, GtkD Coding now has comments) if you think it's still worth 
writing articles centred around 3.9.


Thanks.

Here's the link: 
https://gtkdcoding.com/2021/09/03/0112-gtk-gio-application-barebones.html