* bug#1849: Windows 7 Taskbar Support @ 2009-01-10 18:33 ` Michael Kleehammer 2009-01-11 14:21 ` Jason Rumney ` (3 more replies) 0 siblings, 4 replies; 11+ messages in thread From: Michael Kleehammer @ 2009-01-10 18:33 UTC (permalink / raw) To: emacs-pretest-bug To work well with the upcoming Windows 7, the Windows version of emacs will need to start from emacs.exe without allocating the extra console window. This means it will need to be linked as a GUI program instead of a console program. In previous versions of Windows, the Quick Launch shortcuts were small icons that launched programs. The programs were then allocated a new button in the taskbar. Windows 7 consolidates these: the shortcuts are also the taskbar buttons. Similar to the Mac OS/X dock, when a program that has a shortcut is run, it is not allocated a new taskbar button - instead, the shortcut is highlighed differently. This obviously assumes that the program consists of a single main executable that the shortcut launches. Unfortunately, emacs on Windows is a console program which creates an unwanted "DOS" window. To run as a GUI, a special GUI launcher named runemacs.exe is used which hides the console window. To launch emacs, the user will need to pin runemacs.exe. When launched, it starts emacs.exe and immediately exits, causing two problems: (1) the shortcut does not stay highlighted to indicate the program is running and (2) a 2nd taskbar button is created for emacs.exe. If a user pins emacs.exe, it will always create an extra console window, so that is not an option either. The proper "fix" is to compile the Windows version of emacs.exe as a GUI program, not a console program, which is a very simple change. It would eliminate the ability to run emacs on Windows in a console window, however. First, this is probably acceptable to 99% of users. In fact, I don't know of anyone that runs emacs on Windows in a console, but I'm sure someone does. (Remember, there is no SSH or the like; we're talking Windows here ;) If needed, the makefile could be updated to build either or both. I think it would be simple to compile the program as a GUI program but have the -nw flag allocate a console when needed. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: Windows 7 Taskbar Support 2009-01-10 18:33 ` bug#1849: Windows 7 Taskbar Support Michael Kleehammer @ 2009-01-11 14:21 ` Jason Rumney 2009-01-11 14:30 ` Processed: " Emacs bug Tracking System 2009-06-30 16:05 ` bug#1849: marked as done (Windows 7 Taskbar Support) Emacs bug Tracking System ` (2 subsequent siblings) 3 siblings, 1 reply; 11+ messages in thread From: Jason Rumney @ 2009-01-11 14:21 UTC (permalink / raw) To: Michael Kleehammer, 1849 severity 1849 wishlist thanks Michael Kleehammer wrote: > I think it would be simple to compile the program as a GUI program but have the > -nw flag allocate a console when needed. > I had already considered this approach to offer limited multi-tty functionality on Windows (limited because Windows limits programs to one console at a time). I think it is the right way to deal with this, but I'm not sure that I agree with your claim that it would be simple (you can't just open any console for -nw, it has to follow the same behavior as a program that is compiled as a console program). ^ permalink raw reply [flat|nested] 11+ messages in thread
* Processed: Re: bug#1849: Windows 7 Taskbar Support 2009-01-11 14:21 ` Jason Rumney @ 2009-01-11 14:30 ` Emacs bug Tracking System 0 siblings, 0 replies; 11+ messages in thread From: Emacs bug Tracking System @ 2009-01-11 14:30 UTC (permalink / raw) To: Jason Rumney; +Cc: Emacs Bugs, w32 for {1849} Processing commands for control@emacsbugs.donarmstrong.com: > severity 1849 wishlist bug#1849: Windows 7 Taskbar Support Warning: Unknown package 'w32' Severity set to `wishlist' from `normal' > thanks Stopping processing here. Please contact me if you need assistance. Don Armstrong (administrator, Emacs bugs database) ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: marked as done (Windows 7 Taskbar Support) 2009-01-10 18:33 ` bug#1849: Windows 7 Taskbar Support Michael Kleehammer 2009-01-11 14:21 ` Jason Rumney @ 2009-06-30 16:05 ` Emacs bug Tracking System 2012-01-07 4:26 ` bug#1849: Windows 7 Taskbar Support Jason Rumney 2016-02-29 4:20 ` Lars Ingebrigtsen 3 siblings, 0 replies; 11+ messages in thread From: Emacs bug Tracking System @ 2009-06-30 16:05 UTC (permalink / raw) To: Jason Rumney [-- Attachment #1: Type: text/plain, Size: 837 bytes --] Your message dated Tue, 30 Jun 2009 23:57:19 +0800 with message-id <4A4A35DF.4040106@f2s.com> and subject line Re: bug#1849: emacs on Windows 7 has caused the Emacs bug report #1849, regarding Windows 7 Taskbar Support to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@emacsbugs.donarmstrong.com immediately.) -- 1849: http://emacsbugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=1849 Emacs Bug Tracking System Contact owner@emacsbugs.donarmstrong.com with problems [-- Attachment #2: Type: message/rfc822, Size: 5071 bytes --] From: "Michael Kleehammer" <michael@kleehammer.com> To: emacs-pretest-bug@gnu.org Subject: Windows 7 Taskbar Support Date: Sat, 10 Jan 2009 12:33:36 -0600 Message-ID: <cafbb4e50901101033m4e49c78pbc6718de26d8c1c1@mail.gmail.com> To work well with the upcoming Windows 7, the Windows version of emacs will need to start from emacs.exe without allocating the extra console window. This means it will need to be linked as a GUI program instead of a console program. In previous versions of Windows, the Quick Launch shortcuts were small icons that launched programs. The programs were then allocated a new button in the taskbar. Windows 7 consolidates these: the shortcuts are also the taskbar buttons. Similar to the Mac OS/X dock, when a program that has a shortcut is run, it is not allocated a new taskbar button - instead, the shortcut is highlighed differently. This obviously assumes that the program consists of a single main executable that the shortcut launches. Unfortunately, emacs on Windows is a console program which creates an unwanted "DOS" window. To run as a GUI, a special GUI launcher named runemacs.exe is used which hides the console window. To launch emacs, the user will need to pin runemacs.exe. When launched, it starts emacs.exe and immediately exits, causing two problems: (1) the shortcut does not stay highlighted to indicate the program is running and (2) a 2nd taskbar button is created for emacs.exe. If a user pins emacs.exe, it will always create an extra console window, so that is not an option either. The proper "fix" is to compile the Windows version of emacs.exe as a GUI program, not a console program, which is a very simple change. It would eliminate the ability to run emacs on Windows in a console window, however. First, this is probably acceptable to 99% of users. In fact, I don't know of anyone that runs emacs on Windows in a console, but I'm sure someone does. (Remember, there is no SSH or the like; we're talking Windows here ;) If needed, the makefile could be updated to build either or both. I think it would be simple to compile the program as a GUI program but have the -nw flag allocate a console when needed. [-- Attachment #3: Type: message/rfc822, Size: 3034 bytes --] From: Jason Rumney <jasonr@f2s.com> To: 1849-done@emacsbugs.donarmstrong.com Cc: Ben Straub <ben@straubnet.net> Subject: Re: bug#1849: emacs on Windows 7 Date: Tue, 30 Jun 2009 23:57:19 +0800 Message-ID: <4A4A35DF.4040106@f2s.com> Jason Rumney wrote: > Ben Straub wrote: >> I've submitted a patch to emacs-devel >> (http://lists.gnu.org/archive/html/emacs-devel/2009-05/msg00461.html), >> though I wasn't aware this bug existed then. >> > > Thanks, we'll probably install it as soon as the 23.1 branch is cut. A similar patch is now installed. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: Windows 7 Taskbar Support 2009-01-10 18:33 ` bug#1849: Windows 7 Taskbar Support Michael Kleehammer 2009-01-11 14:21 ` Jason Rumney 2009-06-30 16:05 ` bug#1849: marked as done (Windows 7 Taskbar Support) Emacs bug Tracking System @ 2012-01-07 4:26 ` Jason Rumney 2012-01-09 17:40 ` Juanma Barranquero 2016-02-29 4:20 ` Lars Ingebrigtsen 3 siblings, 1 reply; 11+ messages in thread From: Jason Rumney @ 2012-01-07 4:26 UTC (permalink / raw) To: 1849 Reopened. It seems that this is only partially done. Emacs, emacsclient and runemacs are setting the AppUserModel ID consistently, so when running their windows will group together. But there are two remaining changes before this can be considered complete: 1. Set the AppUserModel ID on the shortcut created by addpm.exe, so dragging the shortcut to the taskbar will work as expected (pinned shortcut grouped with windows of running emacs). 2. Set the AppUserModel RelaunchCommand property of Emacs windows to "runemacs.exe" so that pinning an running Emacs instance works as expected (launch via runemacs.exe so the command window does not show). Unfortunately both of these require directly using the IPropertyStore interface, which is only available on Windows versions since Vista, and is missing from current mingw32 headers, so a significant amount of reverse engineering system headers will be involved. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: Windows 7 Taskbar Support 2012-01-07 4:26 ` bug#1849: Windows 7 Taskbar Support Jason Rumney @ 2012-01-09 17:40 ` Juanma Barranquero 0 siblings, 0 replies; 11+ messages in thread From: Juanma Barranquero @ 2012-01-09 17:40 UTC (permalink / raw) To: Jason Rumney; +Cc: 1849 On Sat, Jan 7, 2012 at 05:26, Jason Rumney <jasonr@gnu.org> wrote: > 2. Set the AppUserModel RelaunchCommand property of Emacs windows to > "runemacs.exe" so that pinning an running Emacs instance works as expected > (launch via runemacs.exe so the command window does not show). > > Unfortunately both of these require directly using the IPropertyStore > interface, If I'm reading the docs right, this also means that, instead of SetCurrentProcessExplicitUserModelID, we'll have to use the IPropertyStore to set the AppUserModelID at the window level: http://msdn.microsoft.com/en-us/library/windows/desktop/dd378459(v=vs.85).aspx "When an application sets an explicit AppUserModelID at the window level, the application can provide the specifics of its relaunch command for its taskbar button." Doc for SHGetPropertyStoreForWindow says: "A window's properties must be removed before the window is closed. If this is not done, the resources used by those properties are not returned to the system. A property is removed by setting it to the PROPVARIANT type VT_EMPTY." So it seems like there will be initialization and cleanup for every frame creation/destruction. Juanma ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: Windows 7 Taskbar Support 2009-01-10 18:33 ` bug#1849: Windows 7 Taskbar Support Michael Kleehammer ` (2 preceding siblings ...) 2012-01-07 4:26 ` bug#1849: Windows 7 Taskbar Support Jason Rumney @ 2016-02-29 4:20 ` Lars Ingebrigtsen 2016-02-29 15:26 ` Eli Zaretskii 3 siblings, 1 reply; 11+ messages in thread From: Lars Ingebrigtsen @ 2016-02-29 4:20 UTC (permalink / raw) To: Michael Kleehammer; +Cc: 1849 "Michael Kleehammer" <michael@kleehammer.com> writes: > To work well with the upcoming Windows 7, the Windows version of emacs will need > to start from emacs.exe without allocating the extra console window. This means > it will need to be linked as a GUI program instead of a console program. [...] Jason Rumney <jasonr@gnu.org> writes: > Reopened. > > It seems that this is only partially done. Emacs, emacsclient and > runemacs are setting the AppUserModel ID consistently, so when running > their windows will group together. But there are two remaining changes > before this can be considered complete: > > 1. Set the AppUserModel ID on the shortcut created by addpm.exe, so > dragging the shortcut to the taskbar will work as expected (pinned > shortcut grouped with windows of running emacs). > > 2. Set the AppUserModel RelaunchCommand property of Emacs windows to > "runemacs.exe" so that pinning an running Emacs instance works as expected > (launch via runemacs.exe so the command window does not show). > > Unfortunately both of these require directly using the IPropertyStore > interface, which is only available on Windows versions since Vista, and > is missing from current mingw32 headers, so a significant amount of > reverse engineering system headers will be involved. This was four years ago. Has this been fixed in the meantime? -- (domestic pets only, the antidote for overdose, milk.) bloggy blog: http://lars.ingebrigtsen.no ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: Windows 7 Taskbar Support 2016-02-29 4:20 ` Lars Ingebrigtsen @ 2016-02-29 15:26 ` Eli Zaretskii 2021-09-19 16:20 ` Stefan Kangas 0 siblings, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2016-02-29 15:26 UTC (permalink / raw) To: Lars Ingebrigtsen; +Cc: 1849, michael > From: Lars Ingebrigtsen <larsi@gnus.org> > Date: Mon, 29 Feb 2016 15:20:15 +1100 > Cc: 1849@debbugs.gnu.org > > > It seems that this is only partially done. Emacs, emacsclient and > > runemacs are setting the AppUserModel ID consistently, so when running > > their windows will group together. But there are two remaining changes > > before this can be considered complete: > > > > 1. Set the AppUserModel ID on the shortcut created by addpm.exe, so > > dragging the shortcut to the taskbar will work as expected (pinned > > shortcut grouped with windows of running emacs). > > > > 2. Set the AppUserModel RelaunchCommand property of Emacs windows to > > "runemacs.exe" so that pinning an running Emacs instance works as expected > > (launch via runemacs.exe so the command window does not show). > > > > Unfortunately both of these require directly using the IPropertyStore > > interface, which is only available on Windows versions since Vista, and > > is missing from current mingw32 headers, so a significant amount of > > reverse engineering system headers will be involved. > > This was four years ago. Has this been fixed in the meantime? No, and it probably never will be. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: Windows 7 Taskbar Support 2016-02-29 15:26 ` Eli Zaretskii @ 2021-09-19 16:20 ` Stefan Kangas 2021-09-19 17:13 ` Eli Zaretskii 0 siblings, 1 reply; 11+ messages in thread From: Stefan Kangas @ 2021-09-19 16:20 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 1849, Lars Ingebrigtsen, michael Eli Zaretskii <eliz@gnu.org> writes: >> From: Lars Ingebrigtsen <larsi@gnus.org> >> Date: Mon, 29 Feb 2016 15:20:15 +1100 >> Cc: 1849@debbugs.gnu.org >> >> > It seems that this is only partially done. Emacs, emacsclient and >> > runemacs are setting the AppUserModel ID consistently, so when running >> > their windows will group together. But there are two remaining changes >> > before this can be considered complete: >> > >> > 1. Set the AppUserModel ID on the shortcut created by addpm.exe, so >> > dragging the shortcut to the taskbar will work as expected (pinned >> > shortcut grouped with windows of running emacs). >> > >> > 2. Set the AppUserModel RelaunchCommand property of Emacs windows to >> > "runemacs.exe" so that pinning an running Emacs instance works as expected >> > (launch via runemacs.exe so the command window does not show). >> > >> > Unfortunately both of these require directly using the IPropertyStore >> > interface, which is only available on Windows versions since Vista, and >> > is missing from current mingw32 headers, so a significant amount of >> > reverse engineering system headers will be involved. >> >> This was four years ago. Has this been fixed in the meantime? > > No, and it probably never will be. That was five years ago. Presumably, if it will never be fixed, life will move on and Windows 7 will be left on the dustbin of history. Should we just go ahead and close this as wontfix? Lars? ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: Windows 7 Taskbar Support 2021-09-19 16:20 ` Stefan Kangas @ 2021-09-19 17:13 ` Eli Zaretskii 2021-09-19 17:38 ` Stefan Kangas 0 siblings, 1 reply; 11+ messages in thread From: Eli Zaretskii @ 2021-09-19 17:13 UTC (permalink / raw) To: Stefan Kangas; +Cc: 1849, larsi, michael > From: Stefan Kangas <stefan@marxist.se> > Date: Sun, 19 Sep 2021 09:20:43 -0700 > Cc: Lars Ingebrigtsen <larsi@gnus.org>, 1849@debbugs.gnu.org, michael@kleehammer.com > > >> > Unfortunately both of these require directly using the IPropertyStore > >> > interface, which is only available on Windows versions since Vista, and > >> > is missing from current mingw32 headers, so a significant amount of > >> > reverse engineering system headers will be involved. > >> > >> This was four years ago. Has this been fixed in the meantime? > > > > No, and it probably never will be. > > That was five years ago. Presumably, if it will never be fixed, life > will move on and Windows 7 will be left on the dustbin of history. > > Should we just go ahead and close this as wontfix? Lars? I'm not Lars, but I think that we should close it, indeed. ^ permalink raw reply [flat|nested] 11+ messages in thread
* bug#1849: Windows 7 Taskbar Support 2021-09-19 17:13 ` Eli Zaretskii @ 2021-09-19 17:38 ` Stefan Kangas 0 siblings, 0 replies; 11+ messages in thread From: Stefan Kangas @ 2021-09-19 17:38 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 1849, larsi, michael tags 1849 wontfix close 1849 thanks Eli Zaretskii <eliz@gnu.org> writes: >> From: Stefan Kangas <stefan@marxist.se> >> Date: Sun, 19 Sep 2021 09:20:43 -0700 >> Cc: Lars Ingebrigtsen <larsi@gnus.org>, 1849@debbugs.gnu.org, michael@kleehammer.com >> >> >> > Unfortunately both of these require directly using the IPropertyStore >> >> > interface, which is only available on Windows versions since Vista, and >> >> > is missing from current mingw32 headers, so a significant amount of >> >> > reverse engineering system headers will be involved. >> >> >> >> This was four years ago. Has this been fixed in the meantime? >> > >> > No, and it probably never will be. >> >> That was five years ago. Presumably, if it will never be fixed, life >> will move on and Windows 7 will be left on the dustbin of history. ^^ in >> >> Should we just go ahead and close this as wontfix? Lars? > > I'm not Lars, but I think that we should close it, indeed. OK, thanks. Closing. ^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2021-09-19 17:38 UTC | newest] Thread overview: 11+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- [not found] <4A4A35DF.4040106@f2s.com> 2009-01-10 18:33 ` bug#1849: Windows 7 Taskbar Support Michael Kleehammer 2009-01-11 14:21 ` Jason Rumney 2009-01-11 14:30 ` Processed: " Emacs bug Tracking System 2009-06-30 16:05 ` bug#1849: marked as done (Windows 7 Taskbar Support) Emacs bug Tracking System 2012-01-07 4:26 ` bug#1849: Windows 7 Taskbar Support Jason Rumney 2012-01-09 17:40 ` Juanma Barranquero 2016-02-29 4:20 ` Lars Ingebrigtsen 2016-02-29 15:26 ` Eli Zaretskii 2021-09-19 16:20 ` Stefan Kangas 2021-09-19 17:13 ` Eli Zaretskii 2021-09-19 17:38 ` Stefan Kangas
Code repositories for project(s) associated with this external index https://git.savannah.gnu.org/cgit/emacs.git https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.