locked
VS Shell / Package: Find and Replace Text in a Selection Not working as expected RRS feed

  • Question

  • Hello,

    I am creating a new custom WPF Editor in VS2010 and I noticed that my Replace in selection code doesn't seem to be working as expected. When I have text selected and then search for text using the find dialog. It seems that my selection's bounds are not stored by Visual Studio and that it just continuously loops through the documents text. Is there an interface method that is called which I can store the selection points which are then later restored by Visual Studio's API? I've set break points and did quite a bit of searching and didn't see anything like this. I also have this behavior when I do replace in selection, it just replaces everything in the document.

        [ComSourceInterfaces(typeof (IVsTextViewEvents))]
        [ComVisible(true)]
        public abstract class EditorPaneBase :
            WindowPane,
            IPersistFileFormat//to Enable persistence functionality for document data.
            IVsPersistDocData2//to Enable persistence functionality for document data.
            IVsFileChangeEvents//to notify the client when file changes on disk
            IVsDocDataFileChangeControl//to Determine whether changes to files made outside of the editor should be ignored
            IVsFileBackup//to support backup of files. Visual Studio File Recovery backs up all objects in the Running Document Table that support IVsFileBackup and have unsaved changes.
            IVsStatusbarUser//support updating the status bar
            IVsFindTarget//to implement find and replace capabilities within the editor
            IVsTextImage//to support find and replace in a text image
            IVsTextSpanSet//needed for Find and Replace to work appropriately
            IVsTextView//Manages the text view of an editor window. Contains methods to manage the text view. The view is essentially the editor window shown in the UI.
            IVsCodeWindow//needed for Find and Replace to work appropriately
            IVsTextLines//needed for Find and Replace to work appropriately
            IVsToolboxUser//Sends notification about Toolbox items to the owner of these items
            IExtensibleObject,  //so we can get the atuomation object
            Document

    Thanks

    -Blake Niemyjski

    Friday, May 20, 2011 6:33 PM

Answers

  • I traced through a fairly simply Find in selection scenario in the VS editor and below is a dump of info, I am not an editor dev so I may have missed something, but you can at least compare it roughly to what you have

    The dialog calls GetCapabilities (numerous times) to see what kind of things your editor supports.  Here is what the default editor does / the apparent contract of this call

      Set pfImage[0] to true if you support IVsTextImage
      Set pgrfOptions[0] to some combination of __VSFINDOPTIONS that you support, for you __VSFINDOPTIONS.FR_Selection may be interesting

        These lines (from the editor code) may also be interesting:

            //There is a non-empty selection, set the selection default flag provided the selection
            //contains characters on multiple lines (in particular, do not set the selection
            //flag if the selection end just after the linebreak of the line on which it starts).
            ITextSnapshotLine start = view.TextSnapshot.GetLineFromPosition(view.Selection.Start.Position);

            if (start.EndIncludingLineBreak < view.Selection.End.Position)
                pgrfOptions[0] |= (uint)__VSFINDOPTIONS.FR_SelectionDefault;

    It then calls IVsFindTarget.GetProperty with VSFTPROPID_InitialPatternAggressive to try and find the initial text to populate the find area with. The stock editor appears to just return the selected text, if it is a multi-line selection they return just the first line

    It then calls IVsFindTarget.GetMatchRect to get the rectangle occupied by the selection (if any) so it can position the dialog out of the way of the selection. If no selection the editor returns all 0's for the rect + E_FAIL, otherwise the rectangle of the selection (in screen coordinates) + S_OK

    It then calls IVsFindTarget.GetProperty with VSFTPROPID_BlockName to get the name to show for the current block (I think this is for things like region support), otherwie it will just display <Current Block> (this is in the 'Search Where' drop down combo)

    When you hit find the dialog asks for the find state via calling IVsFindTargt.GetFindState, this is something that needs to be stored when IVsFindTarget.SetFindState is called (the find dialog expects you to hold on to this for it). If you have nothing you can return null + failure (the editor returns E_FAIL)

    After asking for the find state it will call IVsFindTarget.GetSearchImage.  It wants an IVsTextImage implementing 'thing' as well as for you to add any spans to ppSpans. This seems to be where you indicate what your selection is to constrain the search but only if the given  options to this call include __VSFINDOPTIONS.FR_Selection. If the dialog passes FR_Selection but you have no selection you can return E_FAIL (the editor does this).  If you have one or more spans you need to add them to ppSpans[0] via the Add method.

    It then calls IVsFindTarget.GetCurrentSpan, the editor returns the span information + S_FALSE if there is no selection and S_OK if there is

    It then calls IVsFindTarget.NotifyFindTarget with VSFTNOTIFY_STARTFIND (2) to indicate it is starting the find operation. The editor uses this to add a GoBack marker to facilitate navigation.

    It then calls IVsFindTarget.NotifyFindTarget with VSFTNOTIFY_ENDFIND (3) to indicate it is done with the current find

    If it found something it calls IvsFindTarget.NavigateTo to ask you to scroll your editor to the given location.

    You will get notified when you become the active find target via a call to IVsFindTarget.Notify passing in VSFTNOTIFY_CURRENT (0)

    Ryan


    • Proposed as answer by Victor_Chen Tuesday, May 31, 2011 7:21 AM
    • Marked as answer by Victor_Chen Tuesday, May 31, 2011 7:47 AM
    Friday, May 27, 2011 4:37 AM

All replies

  • Hard to say without knowing how you are implementing various interface methods.  Does your IVsFindTarget.GetCurrentSpan correctly return the selected span?

    Ryan

    Friday, May 20, 2011 8:11 PM
  • Hello,

    What specific interface methods does one need to implement for this functionality to work as expected (Some of the Xml comments say that don't implement this method due to interface xxx....)? The Find and Replace does work, but it doesn't work for replacing / finding text in a selection. I'd be more than happy to post specific interface method implementations. There is a ton of code here, which is why I'm refraining without specifics.

    I have verified that this method does work as expected:

     

            /// <summary>

            /// Get current cursor location

            /// </summary>

            /// <param name="pts">Current location</param>

            /// <returns>Hresult</returns>

            int IVsFindTarget.GetCurrentSpan(TextSpan[] pts)

            {

                if (null == pts || 0 == pts.Length)

                    return VSConstants.E_INVALIDARG;

     

                _editorControl.GetCurrentSelection(pts);

     

                return VSConstants.S_OK;

            }

     

    Also, I noticed the public int NavigateTo(TextSpan[] pts) method is called, which changes the current selected text. I notice that it always selects text outside of the text range at first (until you go to the end and then start of the current document). I looked at the call stack and couldn't see any code being called from my EditorPane implementation.

    Thanks

    -Blake Niemyjski


    -Blake Niemyjski (Software Development Engineer)
    Monday, May 23, 2011 5:16 PM
  • Hello,

    Does anyone have any ideas on this issue?

    Thanks

    -Blake


    -Blake Niemyjski (Software Development Engineer)
    Wednesday, May 25, 2011 11:02 PM
  • I haven't had a chance to look into this more yet (busy).  However, since all these questions are very editor specific asking in the Editor forum may get you more prompt responses since that is where most of the editor experts hang out.

    Ryan

    Wednesday, May 25, 2011 11:34 PM
  • Hello,

    I have posted this to the editor forum. If you have some time to look into this and could update this thread it would be greatly appreciated.

    Thanks

    -Blake Niemyjski


    -Blake Niemyjski (Software Development Engineer)
    Thursday, May 26, 2011 7:16 PM
  • I traced through a fairly simply Find in selection scenario in the VS editor and below is a dump of info, I am not an editor dev so I may have missed something, but you can at least compare it roughly to what you have

    The dialog calls GetCapabilities (numerous times) to see what kind of things your editor supports.  Here is what the default editor does / the apparent contract of this call

      Set pfImage[0] to true if you support IVsTextImage
      Set pgrfOptions[0] to some combination of __VSFINDOPTIONS that you support, for you __VSFINDOPTIONS.FR_Selection may be interesting

        These lines (from the editor code) may also be interesting:

            //There is a non-empty selection, set the selection default flag provided the selection
            //contains characters on multiple lines (in particular, do not set the selection
            //flag if the selection end just after the linebreak of the line on which it starts).
            ITextSnapshotLine start = view.TextSnapshot.GetLineFromPosition(view.Selection.Start.Position);

            if (start.EndIncludingLineBreak < view.Selection.End.Position)
                pgrfOptions[0] |= (uint)__VSFINDOPTIONS.FR_SelectionDefault;

    It then calls IVsFindTarget.GetProperty with VSFTPROPID_InitialPatternAggressive to try and find the initial text to populate the find area with. The stock editor appears to just return the selected text, if it is a multi-line selection they return just the first line

    It then calls IVsFindTarget.GetMatchRect to get the rectangle occupied by the selection (if any) so it can position the dialog out of the way of the selection. If no selection the editor returns all 0's for the rect + E_FAIL, otherwise the rectangle of the selection (in screen coordinates) + S_OK

    It then calls IVsFindTarget.GetProperty with VSFTPROPID_BlockName to get the name to show for the current block (I think this is for things like region support), otherwie it will just display <Current Block> (this is in the 'Search Where' drop down combo)

    When you hit find the dialog asks for the find state via calling IVsFindTargt.GetFindState, this is something that needs to be stored when IVsFindTarget.SetFindState is called (the find dialog expects you to hold on to this for it). If you have nothing you can return null + failure (the editor returns E_FAIL)

    After asking for the find state it will call IVsFindTarget.GetSearchImage.  It wants an IVsTextImage implementing 'thing' as well as for you to add any spans to ppSpans. This seems to be where you indicate what your selection is to constrain the search but only if the given  options to this call include __VSFINDOPTIONS.FR_Selection. If the dialog passes FR_Selection but you have no selection you can return E_FAIL (the editor does this).  If you have one or more spans you need to add them to ppSpans[0] via the Add method.

    It then calls IVsFindTarget.GetCurrentSpan, the editor returns the span information + S_FALSE if there is no selection and S_OK if there is

    It then calls IVsFindTarget.NotifyFindTarget with VSFTNOTIFY_STARTFIND (2) to indicate it is starting the find operation. The editor uses this to add a GoBack marker to facilitate navigation.

    It then calls IVsFindTarget.NotifyFindTarget with VSFTNOTIFY_ENDFIND (3) to indicate it is done with the current find

    If it found something it calls IvsFindTarget.NavigateTo to ask you to scroll your editor to the given location.

    You will get notified when you become the active find target via a call to IVsFindTarget.Notify passing in VSFTNOTIFY_CURRENT (0)

    Ryan


    • Proposed as answer by Victor_Chen Tuesday, May 31, 2011 7:21 AM
    • Marked as answer by Victor_Chen Tuesday, May 31, 2011 7:47 AM
    Friday, May 27, 2011 4:37 AM
  • Hello,

    Thanks for this response, it is greatly appreciated. We are going down this road and working on getting this working :). We will let you know how it goes or if we have any questions.

    Thanks

    -Blake Niemyjski


    -Blake Niemyjski (Software Development Engineer)
    Thursday, June 2, 2011 9:19 PM
  • I wanted to let you know that we did get this working thanks to your help. I've went back through all my old cases and am logging them on connect:

    https://connect.microsoft.com/VisualStudio/feedback/details/743586/vs-shell-package-find-and-replace-text-in-a-selection-not-working-as-expected


    -Blake Niemyjski (Software Development Engineer)

    Thursday, May 24, 2012 4:26 PM
  • Hello,

    I'm running into this bug again, but only in VS2012. This functionality appears to be broken but works fine in VS2010. If you could help, that would be greatly appreciated.

    I'm seeing that the the call to GetSearchImage always passes in null for ppSpans when searching. However, if I do a find an replace it contains one null element in the array (and replace works).

    I'm noticing that the Find method below is being called multiple times in VS12. I don't ever remember this method being called in VS10.

            public int Find(string pszSearch, uint grfOptions, int fResetStartPoint, IVsFindHelper pHelper, out uint pResult)
            {
                pResult = 0;
    
                return VSConstants.E_NOTIMPL;
            }

    -Blake Niemyjski (Software Development Engineer)

    Friday, August 10, 2012 9:30 PM
  • Hello,

    I spent a little more time working on this and grabbed some debug info. This log only contains the log information from when the document is open and I press control+f until i press find button and see the dialog either found text or didn't. Please note that the differences in the timestamp shows after I entered in a character that exists in the document and pressed the find button.

    This log is from a Windows 7 Machine running only 2010 SP1. 

    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:57 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:57 PM] GetProperty called. propid: 4 pvar: 
    [8/14/2012 1:30:57 PM] GetMatchRect called. prc: Microsoft.VisualStudio.OLE.Interop.RECT[]
    [8/14/2012 1:30:57 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:57 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] NotifyFindTarget called. notification: 0
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] GetFindState called. ppunk: 
    [8/14/2012 1:30:59 PM] SetFindState called. pUnk: System.__ComObject
    [8/14/2012 1:30:59 PM] GetSearchImage called. grfOptions: 1114116 ppSpans: Microsoft.VisualStudio.TextManager.Interop.IVsTextSpanSet[] ppTextImage: CodeSmith.VisualStudio.Package.Editor.TemplateEditorPane
    [8/14/2012 1:30:59 PM] NotifyFindTarget called. notification: 2
    [8/14/2012 1:30:59 PM] NotifyFindTarget called. notification: 3
    [8/14/2012 1:30:59 PM] NotifyFindTarget called. notification: 0
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] GetMatchRect called. prc: Microsoft.VisualStudio.OLE.Interop.RECT[]
    [8/14/2012 1:30:59 PM] GetProperty called. propid: 5 pvar: Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame+MarshalingWindowFrame
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:59 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]

    This log is from a Windows 8 RC Machine running only 2012 RC.

    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 4
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 9
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] Find called. pszSearch: a grfOptions: 65540 fResetStartPoint: 0 pHelper: 
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 6
    [8/14/2012 1:30:22 PM] GetProperty called. propid: 4 pvar: 
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 4
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 9
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] Find called. pszSearch: a grfOptions: 65540 fResetStartPoint: 0 pHelper: 
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 6
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 4
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 9
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] Find called. pszSearch: a grfOptions: 65540 fResetStartPoint: 0 pHelper: 
    [8/14/2012 1:30:22 PM] NotifyFindTarget called. notification: 6
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetMatchRect called. prc: Microsoft.VisualStudio.OLE.Interop.RECT[]
    [8/14/2012 1:30:22 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:22 PM] GetProperty called (Not Implemented). propid: 2 pvar: 
    [8/14/2012 1:30:22 PM] GetCapabilities called. pfImage:  pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:29 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:29 PM] GetCapabilities called. pfImage: System.Boolean[] pgrfOptions: System.UInt32[]
    [8/14/2012 1:30:29 PM] GetFindState called. ppunk: System.__ComObject
    [8/14/2012 1:30:29 PM] NotifyFindTarget called. notification: 2
    [8/14/2012 1:30:29 PM] Find called. pszSearch: a grfOptions: 537985028 fResetStartPoint: 1 pHelper: System.__ComObject
    [8/14/2012 1:30:29 PM] NotifyFindTarget called. notification: 3
    
    It's worth noting that there are about 20 more calls in the VS2012 when you compare the two above in a compare program. Also the NotifyFindTarget is always called with a different value initially.  Also only VS2012 calls the find method as shown above.


    -Blake Niemyjski (Software Development Engineer)

    Tuesday, August 14, 2012 6:37 PM
  • Any Ideas?

    -Blake Niemyjski (Software Development Engineer)

    Friday, August 17, 2012 8:09 PM
  • I haven't had any time to take a look, they did rework some find stuff related to the new find adornment the editor provided in 2012. Unfortuantely all my editor contacts are no more (switched teams, left the company, etc..) so I would need to dig into the code myself, and I am unfamilar with it (not being an editor dev) so that is generally slow going when I am trying to find out why a complex series of calls has changed in some subtle (or even not so subtle) way between versions.

    Ryan

    Friday, August 17, 2012 8:18 PM
  • It's been over 5 weeks since I first reported this on connecthttps://connect.microsoft.com/VisualStudio/feedback/details/758810/2010-find-implementation-is-broken-in-vs2012-but-replace-still-works#tabs and the forums and still haven't had any help other than we are looking into it.

    I know its not your problem, but this is frustrating...


    -Blake Niemyjski (Software Development Engineer)

    Wednesday, October 3, 2012 8:42 PM
  • bump

    -Blake Niemyjski (Software Development Engineer)

    Thursday, October 11, 2012 9:35 PM
  • >Unfortuantely all my editor contacts are no more (switched teams, left the company, etc..) so I would need to dig into the code myself, and I am unfamilar with it (not being an editor dev) so that is generally slow going when I am trying to find out why a complex series of calls has changed in some subtle (or even not so subtle) way between versions.

    I doubt I will have time in the near term, I am rather busy with other things. The best course of action is to comment on the Connect bug, I assume someone on the editor team is assigned it at the very least, but that isn't my team so I honestly don't know.

    Thursday, October 11, 2012 10:26 PM
  • Hello,

    This is still an issue with VS 2012 Update 1. I know your a busy guy, so please let me know when you have time to look into this. I'd be more than happy to send you a beer via PayPal.. Also, I've commented on this issue on connect but didn't get any response.


    -Blake Niemyjski (Software Development Engineer)

    Monday, December 10, 2012 5:36 PM
  • Hello,

    Is there any update on this issue? Is this fixed in Update2? http://blogs.msdn.com/b/bharry/archive/2013/01/30/announcing-visual-studio-2012-update-2-vs2012-2.aspx

    Wednesday, January 30, 2013 8:55 PM
  • Hello,

    I'm guessing, we'll have to find a different solution and wait until vnext for this to get fixed...


    -Blake Niemyjski (Software Development Engineer)

    Monday, April 8, 2013 10:23 PM
  • I mailed the PM who is listed as the one assigned to the Connect bug internally. I am not on the editor team, so unfortunately I know next to nothing about this piece of the code base and really have no ideas what could have changed or even where to look. An editor dev would need to take a look at it, and I don't know any anymore (the ones I used to know have all switched teams / left Microsoft).
    Tuesday, April 9, 2013 12:21 AM
  • Hello,

    Thanks! Someone reopened and updated the connect issue!!!


    -Blake Niemyjski (Software Development Engineer)

    Tuesday, April 9, 2013 6:53 PM
  • This is still broken in 2013.

    -Blake Niemyjski (Software Development Engineer)

    Monday, August 12, 2013 3:23 PM