unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Michael Kleehammer" <michael@kleehammer.com>
To: emacs-pretest-bug@gnu.org
Subject: bug#1849: Windows 7 Taskbar Support
Date: Sat, 10 Jan 2009 12:33:36 -0600	[thread overview]
Message-ID: <cafbb4e50901101033m4e49c78pbc6718de26d8c1c1@mail.gmail.com> (raw)

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.






             reply	other threads:[~2009-01-10 18:33 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <4A4A35DF.4040106@f2s.com>
2009-01-10 18:33 ` Michael Kleehammer [this message]
2009-01-11 14:21   ` bug#1849: Windows 7 Taskbar Support 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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=cafbb4e50901101033m4e49c78pbc6718de26d8c1c1@mail.gmail.com \
    --to=michael@kleehammer.com \
    --cc=1849@emacsbugs.donarmstrong.com \
    --cc=emacs-pretest-bug@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).