Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Simplify AltDrag #39

Open
stefansundin opened this issue Aug 22, 2015 · 24 comments
Open

Simplify AltDrag #39

stefansundin opened this issue Aug 22, 2015 · 24 comments
Labels

Comments

@stefansundin
Copy link
Owner

@stefansundin stefansundin commented Aug 22, 2015

Hello everyone.

When I prepared to release v1.1, I realized that the source code has gotten quite complicated. I think it reached this state because I tried to make everyone happy and support everything I could think of.

In order to make sure I have the interest to actually work on AltDrag more, I want to make it simpler. Hopefully if it is simpler, it is easier for other people to become interested in helping with development. I have really written almost all of the code in AltDrag myself, even though I've tried to encourage development by others.

Anyway, here is my proposal to simplify the source code:

  • Remove official support for XP. I will make sure to test Win7 and Win10.
    • This will help with #38 as DwmGetWindowAttribute does not exist on XP.
    • If you are using XP, you can always download an old version.
  • Stop mixing 32-bit and 64-bit code. This will result in HookWindows only working on 64-bit windows if you are running a 64-bit version of AltDrag.
  • Remove the ability to hide the tray icon. See #14 for the reason.
  • Remove the Scroll inactive windows feature as it is built in to Windows 10.
  • Remove less known features (or extract the code into separate files).

Do you disagree? What other features do you think I can remove/change in order to make AltDrag simpler? What is preventing you from developing on AltDrag?

@GameScripting
Copy link

@GameScripting GameScripting commented Aug 24, 2015

I am fine with all the proposed changes, except the one to remove the ability to hide the tray icon. See my answer in #14, to keep this one free from details.

Whats preventing me from contributing?
I am not into C in any way and I really love the tool just the way it is. There is nothing I am missing :)

@FickX
Copy link

@FickX FickX commented Aug 24, 2015

I disagree with removing Scroll inactive windows, because there are many people (like myself) who refuse to use Windows 10 because of privacy issues.

@CaptainFlint
Copy link

@CaptainFlint CaptainFlint commented Aug 26, 2015

Stop mixing 32-bit and 64-bit code. This will result in HookWindows only working on 64-bit windows if you are running a 64-bit version of AltDrag.

Will 32-bit applications' windows still be hooked if 64-bit-only AltDrag is running?

Remove the Scroll inactive windows feature as it is built in to Windows 10.

Strongly disagree! I find it very useful, and I plan to keep Win7 my primary system as long as possible.

@kesslern
Copy link

@kesslern kesslern commented Aug 26, 2015

Remove the Scroll inactive windows feature as it is built in to Windows 10.

Strongly disagree! I find it very useful, and I plan to keep Win7 my primry system as long as possible.

+1. I know I'm going to be using Windows 7 at work for quite a while longer, and it's the main reason I sought out AltDrag.

@afit
Copy link

@afit afit commented Aug 28, 2015

My vote is to go for it and remove them all. None of these are critical for me. I've never changed a thing under Alt+Drag's "configure". I suspect you will read exceptions here on unusual use cases rather than the norm from typical users.

@tianon
Copy link

@tianon tianon commented Aug 28, 2015

@mebo
Copy link

@mebo mebo commented Sep 1, 2015

Stop mixing 32-bit and 64-bit code. This will result in HookWindows only working on 64-bit windows if you are running a 64-bit version of AltDrag.

Will 32-bit applications' windows still be hooked if 64-bit-only AltDrag is running?

This is an important item for me as well, can someone please elaborate on this?

@stefansundin
Copy link
Owner Author

@stefansundin stefansundin commented Sep 1, 2015

Will 32-bit applications' windows still be hooked if 64-bit-only AltDrag is running?

No, they would not.

But as always something could be done to run a 32-bit version of that feature at the same time. This is actually how it works right now, the main AltDrag hooks.dll file hooks 32-bit windows. Then hooks_x64.dll is initialized by HookWindows_x64.exe, which hooks all 64-bit windows concurrently.

So I could simply flip that relationship and let people download a standalone 32-bit version of HookWindows. But I might not bundle it with the normal installer. Actually, I haven't made up my mind on this.

@CaptainFlint
Copy link

@CaptainFlint CaptainFlint commented Sep 1, 2015

If we don't have to keep 2 copies of AltDrag running (and therefore, have 2 tray icons which cannot be hidden), I suppose it's OK.

@TroudhuK
Copy link

@TroudhuK TroudhuK commented Sep 3, 2015

I disliked the last version (1.3) of SuperF4, and searching why, I discovered this very useful AltDrag (bye DisplayFusion). So for the 2 softwares it is a shame to:

  • remove translations (I'm French and not confortable with english)
  • remove the "hide tray icon" feature, because these little programs are for me "launch, configure and forget" ones, native-like added features if you understand what I mean. It should not add an other tray icon.
  • remove any features, it is a regression... You should manage code problems without regression, only to improve the software.
    So I will keep the old version of SuperF4 and AltDrag. Very useful softwares anyway, thank you.
@KlaymenDK
Copy link

@KlaymenDK KlaymenDK commented Sep 11, 2015

First of all: YOU ARE AWESOME and thank you again for updating this genius little utility. I NEED IT to keep my sanity whenever I'm forced to work on Windows.

  • I'd be sad to see XP support go, but I understand. As you say, an older version will have to do.
  • I'd be much more sad to se Windows 7 support go, because, as others have said, Windows 10 is a long way off for many of us (not least corporate users).
  • I don't understand the 64-bit window thing. Does it mean I can't use the 64-bit utility on a 64-bit Windows to control 32-bit applications? I'm confused.

Will you be keeping the functionality of adjusting volume (with eg. Alt-wheel)? I hope so.
In my opinion, the feature set of AltDrag is NOT too complex and you could easily keep all the functionality. Cleaning up the code, of course, is another matter and I understand if features are affected in the process.

Again: THANK YOU for helping me stay sane. You're doing good work.

@jaywk
Copy link

@jaywk jaywk commented Sep 11, 2015

I would like to see the scroll inactive windows features stay in the program. It is an incredibly useful feature and keeps me from having to download another program just to have this functionality. Like others have said, I have no plans to update to Windows 10 anytime soon. You could, as you have now, leave it off by default so that it doesn't interfere with Windows 10 users and those of us on W7 can turn it on.

@stefansundin
Copy link
Owner Author

@stefansundin stefansundin commented Sep 11, 2015

@KlaymenDK The 32/64-bit thing would only affect the HookWindows feature. In the config window it is under the Advanced tab. You will still be able to drag any window normally.

@michabu
Copy link

@michabu michabu commented Sep 23, 2015

Thank you for your work on this great helper that helps making Windows usable!

Remove the Scroll inactive windows feature as it is built in to Windows 10.

This is exactly the feature that i was moving to AltDrag for. So I would love to see the support continued.

I would like to back up other people stating that they will not move to Windows10 soon. Please continue the support for Win7 as long as possible. I would also drop support for Windows XP though.

@krogon
Copy link

@krogon krogon commented Sep 23, 2015

Nice that you have notified though update component that Google Code is shutting down.
I am OK with code cleanup, but not with removing features. Due to that I am going to stick with current release.

@Zer0t3ch
Copy link

@Zer0t3ch Zer0t3ch commented Sep 23, 2015

@krogon What features are/have been removed? I haven't seen anything about this.

@tjkirch
Copy link

@tjkirch tjkirch commented Oct 18, 2015

Remove the Scroll inactive windows feature as it is built in to Windows 10.

I have no plan to move to Windows 10, and this feature is the reason I use AltDrag. Please keep it!

@Keith94
Copy link

@Keith94 Keith94 commented Jan 31, 2017

Agreed that "Scroll inactive" should be kept, even in Windows 10 it could be useful if user wanted to disable this behavior.

@xtemp09
Copy link

@xtemp09 xtemp09 commented Feb 14, 2017

I agree with tjkirch, since I have no plans to install W10; W10 is forbidden in some companies due to privacy issues.

@avivey
Copy link

@avivey avivey commented Feb 14, 2017

If you wish to keep using an old version of Windows, you can also use an old version of AltDrag... That's not an argument towards keeping a feature in future versions.

@xtemp09
Copy link

@xtemp09 xtemp09 commented Feb 14, 2017

"Old" is a bad word. I'd like to use "the most popular".

@avivey
Copy link

@avivey avivey commented Feb 14, 2017

If you don't like "old", you can use "OS Version Appropriate" version of AltDrag, version 1.1.

@loligans
Copy link

@loligans loligans commented Sep 9, 2019

Microsoft is working on extending the Windows 10 shell with an application called, Power Toys. I recommend everyone to upvote this issue so Microsoft prioritizes Alt-Drag and Alt Resizing.
microsoft/PowerToys#269

@RamonUnch
Copy link

@RamonUnch RamonUnch commented Feb 16, 2021

Unfortunately it seems the PowerToys branch is no longer in development. I did simplify AltDrag and fixed a ton of bugs. Builds are available here:
https://github.com/RamonUnch/AltDrag/releases/

I did not make exactly the same choices Stefan is proposing: I did remove the HookWindows feature because it was very unstable in my experience and in my opinion undesirable, because the point of moving windows normally when you could do it with AltDrag is to avoid AltDrag. I also removed the focus on typing.

There is no more mixing of 32 and 64bit code. I build a 32bit release that works on almost all windows NT versions. It should be easy to make an x64 build but I do not see a benefit for now.

My focus is on later windows 10 x64 but I kept compatibility with older windows because after simplification it is absolutely trivial and the old windows are one of the reasons I still have to use windows.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet