June 2012 Entries

Detecting right-click on XAML GridView control item

Leaving aside why you would ever want to do this in a touch-centric world, here's how you tell if the right-mouse button has been clicked on a GridView in XAML/WinRT/Metro-style. You have to retrieve a point relative to the UI element you're in, and then query its properties. void itemGridView_PointerPressed... sender, PointerRoutedEventArgs e) { if (e.GetCurrentPoint(this).Pr... { this.BottomAppBar.IsOpen = true; } } (The reason why you might want to do this can be ......

Virtualising Windows 8 on OS X with VMware Fusion above the 8GB limit

tl;dr - don't.VMware Fusion has an 8GB limit, so on my 16GB MacBook Pro (which is an old one with a 16GB memory upgrade), I wanted to use more than 8GB. You can fudge it my editing the .vmx file and changing the memsize value to whatever you want.However it turns out that if you do this the performance on the whole machine turns into a pig. It beachballs all over the place, both in VMware and without. Constant hanging of VMware, fan running hot the whole time, etc.This is just an apocryphal view, ......

Windows 8 keyboard shortcuts when virtualising OS X

Seriously, I have no idea why this took me so long to actually sort out.So in Windows 8 you have new keyboard shortcuts for accessing search (Win+Q), charms (Win+C), settings (Win+I), etc. Problem is that some of those collide with standard OS X mapping - for example Win+Q will close down VMware, Win+C will issue copy, etc.You can add additional mappings into VMware. Use the Preferences panel to do that. Here you can see that I've mapped Win+Shift+C to Win+C. (OK, that assumes you use a Windows keyboard ......

RIM's current BB7 developer toolset is a joke

tl;dr - RIM's current developer toolset is not fit for purpose.Background to this is that I'm currently working on a PhoneGap/Cordova project for a client that has to run on BlackBerry. The tooling is so ridiculous to use that even though I had a gentle dig at them in a Guardian piece it's worth having a more full-on attack.At the moment, RIM's pitch is that apps are built for the current BBOS7 devices using WebWorks. This is an HTML-based toolset. Essentially a browser is spun up in a native app ......

Say goodbye to System.Reflection.Emit (any dynamic proxy generation) in WinRT

tl;dr - Forget any form of dynamic code emitting in Metro-style. It's not going to happen.Over the past week or so I've been trying to get Moq (the popular open source TDD mocking framework) to work on WinRT. Irritatingly, the day before Release Preview was released it was actually working on Consumer Preview. However in Release Preview (RP) the System.Reflection.Emit namespace is gone. Forget any form of dynamic code generation and/or MSIL injection.This kills off any project based on the popular ......