Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Taking Your Application to the Next Level with Windows 7<br />Mithun Dhar<br />Developer evangelist<br />Microsoft Corpora...
What the heck is a <br />			Developer Evangelist??<br />Email: mithund@microsoft.com<br />Twitter:@mithund<br />Facebook: ...
See the Future of Developer Technology <br />The Professional Developers Conference (PDC) is the definitive developer even...
Deep, technical content delivered by Microsoft’s technology leaders
Hands-on access to the latest developer technologies and over 1,000 Microsoft product and technology experts available to ...
Unique networking opportunities with leading-edge developers and technology leaders just like you</li></ul>When & Where<br...
Housekeeping<br />Cell Phones on stun mode, please!<br />Restrooms<br />Swag – Windows 7 Ultimate <br />Evaluations – Ple...
Today’s Agenda<br />Taking Your Application to the Next Level with Windows 7 <br /><ul><li>Taskbars
Jump lists
Overlays</li></ul>Building Next Generation UI with Multitouch & Windows Ribbon in Windows 7<br /><ul><li>Ribbon Markup and...
Multitouch Developer Options
Multitouch </li></ul>Beyond Human Interaction with Windows 7 Sensor and Location Platform<br /><ul><li>Use Sensor Platform...
Location Location Location
Shine on Modern Graphics Hardware with DirectX</li></li></ul><li>Windows 7 - Taskbar<br />Look how far we have come!<br />
Design Goals For New Taskbar<br /><ul><li>Single launch surface
Easily controllable
Clean, noise-free, and simple
New opportunities for extensibility
Enhanced productivity</li></li></ul><li>Taskbar Buttons<br />Consolidation<br />Quick launch<br />Notification area icon<b...
The New Windows 7 Taskbar<br />Evolution of launch surfaces<br />Clean, sleek, elegant design<br />Enhances user productiv...
Windows Taskbar Features<br />Main Features<br />Overlay icons            & progress bars<br />Jump lists (destinations, t...
Windows 7 Taskbar<br />A Tour<br />demo<br />
Windows 7 Taskbar<br />ZooBar<br />demo<br />
Summary<br />Build a great Windows 7 Application<br />Get compatible<br />Optimize<br />Differentiate<br />Get the most ou...
Additional Windows 7 Resources<br />Technical Resources<br /><ul><li>Windows Developer Center on MSDN  http://msdn.microso...
Windows Application Compatibility Developer Center                           http://www.msdn.microsoft.com/en-us/windows/a...
Windows 7 Remediation Labs                                                               http://www.readyset7.com/workshops
Windows 7 Training Kit for Developers                                                 http://go.microsoft.com/?linkid=9681321
“PhotoView” Reference Application (XP2Win7Project)                     http://code.msdn.microsoft.com/XP2Win7</li></ul>Tra...
Windows 7 Blog for Developers                                     www.windowsteamblog.com/blogs/developers.aspx
Windows 7 on Channel 9                                                                       http://channel9.msdn.com/tags...
Addendum<br />
Application Compatibility<br />Working Together :)<br />
Application Compatibility Moving from Windows XP to Windows 7<br />Version checking<br />User Account Control<br />Filtere...
Application CompatibilityMoving from Windows Vista to Windows 7<br />Version checking<br />Low level binary changes<br />L...
Get CompatibleAvailable Resources<br />Windows Application Compatibility Center<br />http://msdn.microsoft.com/en-us/windo...
Optimizing<br />Working Better <br />
Optimize for PerformanceGet the Most Out of Windows Performance Enhancements<br />Application restart and recovery with Re...
Trigger-Start Services<br />Background services affect performance, security, reliability, and power consumption<br />You ...
Windows 7 for Developers<br />Jump Lists<br />Answer:<br />Question:<br />How  important?<br />Jump Lists are probably the...
Jump ListsA detailed look<br />Pinned category<br />Destinations<br />(“nouns”)<br />Known categories<br />Custom categori...
Windows 7 for Developers<br />Jump Lists<br />Each taskbar button is associated with a jump list. <br />This is a retracta...
Windows 7 for Developers<br />Jump Lists<br />JumpListLink – an object that extends the ShellLink object and implements IJ...
the taskbar<br />The Windows 7 Taskbar<br />The Windows 7 Taskbar<br />The evolving user interface….<br />
512K of Ram !<br />
Taskbar Buttons<br />Consolidation<br />Quick launch<br />Notification area icon<br />Desktop shortcut<br />Running applic...
Windows 7 Taskbar<br />Enhanced user experience<br />Quick and easy launch of applications<br />Easier to manage windows <...
Windows 7 Taskbar – Icons<br />Face of your program<br />Large and small icons<br />Only customer can pin<br />Color hot-t...
IconsBest practices<br />Are you putting your best foot forward?<br />Make sure your icon looks great<br />Check different...
Get More From Taskbar ButtonsOverlay and progress icons<br />Consolidate: Uncluttered notification area<br />Provide progr...
Taskbar Overlay and ProgressDesign considerations<br />Notification area is now user controlled:<br />Leave yourself out i...
Upcoming SlideShare
Loading in …5
×

Jumplist & Taskbar - Session 1 Win7 Launch

2,637 views

Published on

Windows 7 Launch Presentation - Jumplist & Taskbar. (For Developers)

Published in: Technology
  • Be the first to comment

Jumplist & Taskbar - Session 1 Win7 Launch

  1. 1. Taking Your Application to the Next Level with Windows 7<br />Mithun Dhar<br />Developer evangelist<br />Microsoft Corporation<br />
  2. 2. What the heck is a <br /> Developer Evangelist??<br />Email: mithund@microsoft.com<br />Twitter:@mithund<br />Facebook: http://facebook.com/mithund<br />Blog: http://blogs.msdn.com/mithund<br />
  3. 3. See the Future of Developer Technology <br />The Professional Developers Conference (PDC) is the definitive developer event focused on the technical strategy of the Microsoft developer platform. <br />Who Should Attend<br />The PDC is for leading-edge developers and technology leaders involved in making strategic technology decisions for their companies and organizations.<br />What You’ll Get at the PDC<br /><ul><li>Microsoft’s vision and roadmap for the future of developer technology
  4. 4. Deep, technical content delivered by Microsoft’s technology leaders
  5. 5. Hands-on access to the latest developer technologies and over 1,000 Microsoft product and technology experts available to answer your questions
  6. 6. Unique networking opportunities with leading-edge developers and technology leaders just like you</li></ul>When & Where<br />Los Angeles Convention Center<br />Conference | Nov 17 – 19<br />Workshops & Boot Camp | Nov 16<br />Pricing<br />Event Registration - $2095<br />Discount through Oct 13 - $1795 <br />Additional Workshop Fee - $395<br />One Day Pass - $695<br />Workshop Only Pass - $495<br />Attend the Windows 7 Developer Boot Camp on Nov 16 – FREE!<br />This session is open to the public. You must register online to attend. More info: <br />http://microsoftpdc.com/Registration<br />http://microsoftpdc.com<br />
  7. 7. Housekeeping<br />Cell Phones on stun mode, please!<br />Restrooms<br />Swag – Windows 7 Ultimate <br />Evaluations – Please fill out!<br />Speakers<br />Mithun Dhar (DE)<br />Jason Mauer (DE)<br />YochayKiriaty (DE)<br />
  8. 8. Today’s Agenda<br />Taking Your Application to the Next Level with Windows 7 <br /><ul><li>Taskbars
  9. 9. Jump lists
  10. 10. Overlays</li></ul>Building Next Generation UI with Multitouch & Windows Ribbon in Windows 7<br /><ul><li>Ribbon Markup and API
  11. 11. Multitouch Developer Options
  12. 12. Multitouch </li></ul>Beyond Human Interaction with Windows 7 Sensor and Location Platform<br /><ul><li>Use Sensor Platform to Give Life to Your Application
  13. 13. Location Location Location
  14. 14. Shine on Modern Graphics Hardware with DirectX</li></li></ul><li>Windows 7 - Taskbar<br />Look how far we have come!<br />
  15. 15.
  16. 16.
  17. 17.
  18. 18.
  19. 19.
  20. 20.
  21. 21.
  22. 22. Design Goals For New Taskbar<br /><ul><li>Single launch surface
  23. 23. Easily controllable
  24. 24. Clean, noise-free, and simple
  25. 25. New opportunities for extensibility
  26. 26. Enhanced productivity</li></li></ul><li>Taskbar Buttons<br />Consolidation<br />Quick launch<br />Notification area icon<br />Desktop shortcut<br />Running application windows<br />Multiple windows and hover<br />Running<br />Not running<br />Active<br />
  27. 27. The New Windows 7 Taskbar<br />Evolution of launch surfaces<br />Clean, sleek, elegant design<br />Enhances user productivity, making switching between windows much easier<br />Host of other useful features<br />
  28. 28. Windows Taskbar Features<br />Main Features<br />Overlay icons & progress bars<br />Jump lists (destinations, tasks)<br />Thumbnail toolbars<br />Custom thumbnails<br />Tabbed thumbnails<br />Design Tip<br />Build a great Taskbar Icon<br />Forget about Quick Launch and the system tray<br />
  29. 29. Windows 7 Taskbar<br />A Tour<br />demo<br />
  30. 30. Windows 7 Taskbar<br />ZooBar<br />demo<br />
  31. 31. Summary<br />Build a great Windows 7 Application<br />Get compatible<br />Optimize<br />Differentiate<br />Get the most out of Windows 7<br />Greater reliability<br />Better performance <br />Resource utilization<br />Empower users to do more<br />
  32. 32. Additional Windows 7 Resources<br />Technical Resources<br /><ul><li>Windows Developer Center on MSDN http://msdn.microsoft.com/en-us/windows/dd433113.aspx
  33. 33. Windows Application Compatibility Developer Center http://www.msdn.microsoft.com/en-us/windows/aa904987.aspx
  34. 34. Windows 7 Remediation Labs http://www.readyset7.com/workshops
  35. 35. Windows 7 Training Kit for Developers http://go.microsoft.com/?linkid=9681321
  36. 36. “PhotoView” Reference Application (XP2Win7Project) http://code.msdn.microsoft.com/XP2Win7</li></ul>Training Resources<br />Community Resources<br /><ul><li>Training Offers—Exclusive for Launch Attendees www.microsoft.com/learning/careeroffers
  37. 37. Windows 7 Blog for Developers www.windowsteamblog.com/blogs/developers.aspx
  38. 38. Windows 7 on Channel 9 http://channel9.msdn.com/tags/Windows+7</li></li></ul><li>© 2009 Microsoft Corporation. All rights reserved. <br />The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.<br />
  39. 39. Addendum<br />
  40. 40. Application Compatibility<br />Working Together :)<br />
  41. 41. Application Compatibility Moving from Windows XP to Windows 7<br />Version checking<br />User Account Control<br />Filtered token and privilege elevation<br />Data redirection<br />Windows integrity levels<br />Internet Explorer® protection mode<br />Session 0 isolation<br />
  42. 42. Application CompatibilityMoving from Windows Vista to Windows 7<br />Version checking<br />Low level binary changes<br />Low level network stack<br />Antivirus<br />Removed components<br />Windows Mail<br />Windows Movie Maker<br />Microsoft Agent (msagent.exe)<br />
  43. 43. Get CompatibleAvailable Resources<br />Windows Application Compatibility Center<br />http://msdn.microsoft.com/en-us/windows/aa904987.aspx<br />Application Compatibility on TechNet<br />http://technet.microsoft.com/en-us/windows/aa905066.aspx<br />Application Compatibility Online Remediation<br />http://readyset7.com/workshops<br />Application Compatibility in Windows 7 Training Kit<br />http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=1c333f06-fadb-4d93-9c80-402621c600e7 <br />
  44. 44. Optimizing<br />Working Better <br />
  45. 45. Optimize for PerformanceGet the Most Out of Windows Performance Enhancements<br />Application restart and recovery with Restart Manager<br />I/O priorities and cancelable I/O<br />File System and Registry Transaction Support<br />Event Tracing for Windows (ETW) – high-performance instrumentation<br />Windows Error Reporting<br />Windows Troubleshooting Platform<br />Trigger-Start Services<br />
  46. 46. Trigger-Start Services<br />Background services affect performance, security, reliability, and power consumption<br />You want to minimize the amount of services running at a given time<br />You want to minimize service footprint and runtime<br />Service startup types<br />Windows XP – Auto-Start / Manual<br />Windows Vista – XP + Delayed Auto-Start<br />Windows 7 – Windows Vista + Trigger-Start<br />Available triggers<br />Domain join, IP address available, device arrival, group policy change, and custom<br />
  47. 47. Windows 7 for Developers<br />Jump Lists<br />Answer:<br />Question:<br />How important?<br />Jump Lists are probably the most important feature that applications need to take advantage of in order to truly shine on Windows 7<br />Put important documents at the user’s fingertips<br />You also expect the common tasks to be there<br />TaskBar<br />
  48. 48. Jump ListsA detailed look<br />Pinned category<br />Destinations<br />(“nouns”)<br />Known categories<br />Custom categories<br />User tasks<br />Tasks<br />(“verbs”)<br />Taskbar tasks<br />
  49. 49. Windows 7 for Developers<br />Jump Lists<br />Each taskbar button is associated with a jump list. <br />This is a retractable menu that shows a collection of items and tasks that are relevant to the given application. <br />TaskBar<br />
  50. 50. Windows 7 for Developers<br />Jump Lists<br />JumpListLink – an object that extends the ShellLink object and implements IJumpListTasks<br />TaskBar<br />
  51. 51. the taskbar<br />The Windows 7 Taskbar<br />The Windows 7 Taskbar<br />The evolving user interface….<br />
  52. 52. 512K of Ram !<br />
  53. 53.
  54. 54.
  55. 55.
  56. 56. Taskbar Buttons<br />Consolidation<br />Quick launch<br />Notification area icon<br />Desktop shortcut<br />Running application windows<br />Multiple windows and hover<br />Running<br />Not running<br />Active<br />
  57. 57. Windows 7 Taskbar<br />Enhanced user experience<br />Quick and easy launch of applications<br />Easier to manage windows <br />The user is in control<br />Clean and lightweight<br />Standard Windows UX guidelines<br />All of Microsoft’s products<br />Enhanced Taskbar & Desktop <br />Jump Lists <br />Thumbnail Toolbars <br />Custom Switchers<br />Icons<br />Overlay Icons<br />Progress Bars<br />
  58. 58. Windows 7 Taskbar – Icons<br />Face of your program<br />Large and small icons<br />Only customer can pin<br />Color hot-track<br />Icon Overlay<br />Surface important notifications<br />Appears over your program’s icon<br />Progress bar<br />Surface important notifications<br />Appears in your taskbar button<br />
  59. 59. IconsBest practices<br />Are you putting your best foot forward?<br />Make sure your icon looks great<br />Check different DPIs<br />Check different glass colors and disabled glass<br />How does Color Hot-track look?<br />Determined by your icon’s dominant color<br />
  60. 60. Get More From Taskbar ButtonsOverlay and progress icons<br />Consolidate: Uncluttered notification area<br />Provide progress and additional information through the taskbar button<br />It’s free if you use standard progress dialogs<br />
  61. 61. Taskbar Overlay and ProgressDesign considerations<br />Notification area is now user controlled:<br />Leave yourself out if possible!<br />Use taskbar buttons for custom progress or status information<br />
  62. 62. Peek Preview (Aero Peek)<br />Live peek without a click<br />
  63. 63. Live Thumbnails<br />Live thumbnails: A live preview<br />Windows Vista: One thumbnail per window<br />Windows 7: Grouped thumbnails<br />
  64. 64. Windows 7 Taskbar – Thumbnails<br />Remote-control for a window<br />Surface key commands<br />Accessible from taskbar thumbnail <br />Up to seven buttons<br />
  65. 65. Thumbnail ToolbarsContrasting Thumbnail Toolbar commands and user tasks<br />
  66. 66. Exposing Custom ThumbnailsOverriding Automatic Thumbnail Preview<br />To provide a custom thumbnail preview representation for a window:<br />Set the DWM window attribute to say you will provide an “iconic bitmap” for the window<br />Respond to the window messages DWM will then send in order to set the preview – done for both thumbnail- and full-sized previews<br />
  67. 67. Hi phone!<br />
  68. 68.
  69. 69.
  70. 70. Windows 7 Taskbar – Custom Switchers<br />Surface custom UI (e.g. TDI/MDI)<br />Custom thumbnails for each window<br />Appears in your program’s window list<br />
  71. 71. MDI and TDI Window Switchers<br />What about Internet Explorer tabs?<br />
  72. 72. Windows API Code Pack for the .NET Library<br />Managed class library to access to Win 7 features<br />Windows Shell namespace <br />Windows Vista and Windows 7 Task Dialogs. <br />Support for Shell property system. <br />Taskbar Jumplists, Icon Overlay and Progress bar. <br />Common file dialogs<br />Support for Direct3D 11.0 and DXGI 1.0/1.1 APIs. <br />Sensor Platform APIs <br />Extended Linguistic Services APIs <br />http://code.msdn.com/windowsAPICodePack<br />
  73. 73. Windows 7 Taskbar – Jump Lists<br />Mini Start Menu for your program<br />Surface key destinations and tasks<br />Customizable<br />Accessible via right-click and via drag<br />APIs use the name “Destination List”<br />
  74. 74. Pinned category<br />Destinations<br />(“nouns”)<br />Known categories<br />Custom categories<br />User Tasks<br />Tasks<br />(“verbs”)<br />Taskbar Tasks<br />Windows 7 Taskbar – Jump Lists<br />
  75. 75. Customizing the Jump ListStep 1: Get the free stuff to work<br />Associate your program with the file extension<br />Use common file dialogs<br />Use explicit recent document API<br />
  76. 76. Customizing the Jump ListStep 2: Adding tasks<br />What would your user like to do?<br />Launch your application with special arguments?<br />Launch other applications?<br />Tasks are IShellLink objects<br />Rich shortcut semantics including arguments, working directory, icon, and so on.<br />
  77. 77. Customizing the Jump ListStep 3: Do you have categories?<br />Does it make sense to categorize documents?<br />Is frequent, recent, pinned not enough?<br />For example, Inbox, Outbox, Sales, Marketing …<br />Categories contain IShellItem or IShellLink objects<br />These are documents: You need a file association<br />
  78. 78. Some metrics…<br />More than 90% of sessions have fewer than 15 windows<br />More than 70% of sessions have fewer than 10<br />Non-default taskbar options are used by 0-10% of users<br />

×