#9267 closed patch (outdated)
WIN: Jump list support in Windows 7
Reported by: | SF/sven3000 | Owned by: | sev- |
---|---|---|---|
Priority: | normal | Component: | Port: Win32 |
Version: | Keywords: | ||
Cc: | Game: |
Description
The attached patch is a proof of concept of how Windows 7 jump lists could be supported by ScummVM. The code calls the SHAddToRecentDocs function whenever a game is launched, causing the games to be added to the "Recent" category in the jump list. A user who has ScummVM pinned to the taskbar would be able to quickly launch a game using the jump list without going through the launcher.
Currently, I'm abusing the OSystem::engineInit function for this purpose, as it's the only function on the OSystem class I could find that would be called just before a game launches. There may be a better place to do this.
In theory the code I added shouldn't break anything on older versions of Windows, but this needs testing.
Ticket imported from: #3129979. Ticket imported from: patches/1372.
Attachments (1)
Change History (10)
by , 14 years ago
Attachment: | jump_list.patch added |
---|
comment:1 by , 14 years ago
Owner: | set to |
---|
comment:2 by , 14 years ago
Hi,
first of all thanks for your submission.
I will assign this to our Windows porter so he will hopefully notice this one. Trawis: do you have any opinion on this one?
I noticed the comment where you wonder about game specific icons. ScummVM has currently no game specific icons at all nor any way to connect a target to a game icon, thus no that is not possible to get an icon for a game.
Apart your patch does not follow our code formatting conventions. You should read about them here: http://wiki.scummvm.org/index.php/Code_Formatting_Conventions
// Johannes
comment:3 by , 14 years ago
Summary: | Jump list support in Windows 7 → WIN: Jump list support in Windows 7 |
---|
comment:4 by , 14 years ago
Hi Sven, thanks for the patch. This sounds like a nice feature. Any chance you could clean it up to conform to our coding conventions?
I also wonder how this affects compatibility with older Windows versions. Will ScummVM still run on say Windows XP with this modification? What about even older Windows versions? I see that you have a check for Windows 7 and newer in there, but I wonder about linker time issues. Maybe Travis can elaborate on that, too?
comment:5 by , 14 years ago
The current code seems to require Microsoft Visual C++, and doesn't compile under MinGW. Unfortunately MinGW is often lacking in support for the more recent win32 API changes, due to legal reasons.
I don't think it is worth adding more win32 specific code, for a feature that can only be used by a single version of Windows anyway.
comment:6 by , 14 years ago
I've updated this patch with the following changes: - abstracted taskbar interface (with platform specializations) - per-game icons (when available in the extra folder) in the recent item list - icon overlays (set to the running game if available) - progress bar when mass-adding games - support for MingW (via a compat header with the proper definitions)
I plan to add support for Unity LauncherAPI (API still WIP) and Gnome3 (if they ever add an API).
All changes are available in a branch here: https://github.com/Littleboy/scummvm/tree/taskbar
comment:7 by , 13 years ago
This has been continued on github and now pulled. https://github.com/scummvm/scummvm/pull/46
comment:8 by , 13 years ago
Owner: | changed from | to
---|---|
Resolution: | → outdated |
Status: | new → closed |
comment:9 by , 6 years ago
Component: | → Port: Win32 |
---|
Proof of concept jump list support patch.