Jump to content

Valentin Radu

Member
  • Posts

    2
  • Joined

  • Last visited

  • Days Won

    2
  • Donations

    0.00 USD 
  • Country

    United States

Everything posted by Valentin Radu

  1. So, as requested, I am back with an update: I have pushed modified code in a new branch of my WinCenterTitle project: https://github.com/valinet/WinCenterTitle/tree/glass . Feel free to have a look (“aero” stuff is in dllmain.c). I have not polished it, but it is not gigantic, so it is straightforward to understand. I hook functions and mess a bit with DWM. To understand how I came up with those things, there are some comments, but you can also disassemble uDWM.dll using IDA or Ghidra and start with checking the functions I hooked. At the moment, there are obviously issues: window borders overlap the “1px thin” borders in Windows 10, as in previous versions of the OS, all windows are “glassed”, even child windows and popups, which should be excluded, the frame color gets out of sync with the stuff behind when rearranging windows. That’s what I found out from my testing. Anyway, maybe this is a starting point. Let’s work there. I attach a small screenshot to have a visual representation of what I am talking about. Lastly, thanks for the kind words, I am glad my message was well received, and also I as well hope maybe we gather a few people who are interested in developing this a bit more, in the open, so we can all benefit. Thank you. P.S. Is MSFN blocked in Europe or something like that, because of GDPR compliance or...? I am from Romania, we do not have any internet censorship laws, so this is definitely weird: I keep getting a timeout when attempting to access the web site. It happens both at home and at work, different ISPs, tried with Google’s DNS, no dice. It always “takes too long to respond”. For now, I have installed a free VPN on my phone and I write these messages on my phone, but I was wondering if you have any idea why this might happen.
  2. Hi Just made an account here, I have been following threads on this forums ‘anonymously’ for quite some time now, and wanted to share a few words about this. Nothing makes him special, really. For what is worth, I do not like that he did not open source the project. I mean, I don’t know, from my philosophy and point of view, you shouldn’t charge for projects like this, but whatever, that does not matter, I myself ‘donated’ (read: paid) for this software a good few years back as well. Thing is, it takes a lot of time to research these kinds of projects, and yeah, it teaches you a lot, but there is no financial incentive to doing it. Not short term, not long term. So you need to have some spare time which a lot of people do not have much. Like, take security researchers, that do a similar thing, they play around looking with whatever tools they have available to the inner workings of various pieces of software. BigMuscle here did the same for DWM. Yet, security researchers have the incentive that if they find some critical vulnerability, they get paid by Google etc. Hacking DWM serves no one’s business interest, so... you get what I mean. Anyway, developing this kind of software is pretty hard and becomes tedious and boring easily. You work only with closed source code, you have access only to binaries you can disassemble to various degrees and fortunately, for Windows files, Microsoft offers you symbols, which are little pieces of information that augment the binary ‘code’. That’s it, from there on, you have to look and understand all their architecture, how things piece together and so on. This is tremendous work, and even with financial incentives, it takes time, sometimes you get it wrong etc. Also, the appeal to doing this gets even lower because once you publish it, you have to support it, people will like it and demand it gets ‘updated’ with every release of the Windows OS, and in a timely manner of course. And this complicates the initial problem: you have to find ways to patch it in a way that is less likely to break on newer versions, so that you minimize your work when a new update comes. That again, it consumes a few resources, and especially a lot of time. And also, what programmers try to do when they encounter projects like this, is try to reuse old dormant code that’s still in the binary from previous versions, by maybe also looking on binaries from older versions of the software that had what they wanted. It is pretty hard to develop new stuff for a closed source binary with hardly any public interfaces... Now, regarding DWM, it changed quite a bit in Windows 10 2004. A good couple of the methods BigMuscle hooked in pre-2004 are simply not there in the new DWM. Microsoft actually changed a lot of the underlying architecture. What exactly, for what purpose, what is the high level meaning behind it? I did not have time to look enough at it to figure it out. Also, I had a try at this myself as well. I disassembled BM’s Aero Glass a while ago and looked a bit on it a while ago and gathering a few ideas from there, I coded a utility that changed the title bar text in Windows 10 to be centered. “Version 1” was pretty future proof, but had some edge cases which were still problematic, plus it did not do it quite like Windows 8 did it. I researched a lot more and was able to now fix my main issue with it, namely centering the text between the window borders, not the icon and minimize button. But it took considerably more time and effort and hooking to achieve this minor effect. I looked on DWM a bit more (BigMuscle did the same, but probably on way more of it then I did until now) and could ‘easily’ do a lot of stuff. You know acrylic (aka blur behind)? I enabled that on all title bars via DWM, it looks pretty awesome, I’d daily drive that. Imo it looks even better than Aero Glass, but that’s not the point. Point is it can be done, I relatively easily have done it myself, there were some rough edges of course, but I played with it. Some other stuff came up, did not really had time to work on it anymore, at least for the moment. But maintaining the kind of hacks required for releasing a public version of this is insane. People want UIs, configuration etc, for a niche and specialized thing like this, even command line arguments are too much, I’d rather DEFINE some stuff and compile it for each user’s taste. And there also is not a community keen on developing this. A one man army on this is not feasible, but maybe a team, on a public Git could each member write small bits and get somewhere. That’s why I believe, for e.g., that BM better open sourced it. Even in its now broken state with a lot of the code not that useful on newer Windows builds, still, it is a starting point. In a closed binary, without even symbols, it is uselessly lost knowledge, unfortunately, as no one has the time and incentive, as I said, to take a look at it. There are brilliant programmers out there, but this does not pay off that much. Anyway, I write this on mobile. Maybe when I open the PC I could upload a screenshot of my ‘Aero Glass’, but I don’t want to needlessly tease. Because this probably will never ship. An optimistic plan is to integrate this with my previously mentioned tool, but in the state of mess (coding wise) it is at the moment, it may take a while, especially not having a lot of time to work on this. What I can do in the mean time, is leave you a link to WinCenterTitle (https://github.com/valinet/WinCenterTitle), this software I mentioned that centers your title bar text. If you go to releases to download binaries, the latest modifications are in a pre releas version situated there. So that’s the story of it, at least how I see it. Edit: Yeah, also, forgot to say, what is pathetic here is that DWM is closed source, especially considering that third parties cannot really do compositors for Windows. I mean, I blame Microsoft here, it would be so cool to have official, powerful mechanisms to hook into it and do cool stuff. With that, I tell you, in 2 weeks someone will implement, for e.g., the genie effect when minimizing windows and all sorts of crazy stuff. It is pretty much a shame they also have this mess lately (some stuff that should be in DWM is in Explorer for some reason, like Win Tab, Alt Tab, Snap Assist etc) and also do not realistically look forward to collaborating with the enthusiasts; DWM is actually a pretty decent compositor and window manager.
×
×
  • Create New...