Mark all "My" menu links as external
Custom menu links may use URLs that are not covered by the client router. When following a link that shares the domain, it will be intercepted by the catchall route and a visual 404 will be mistakenly shown. With this change, all of the custom links in this menu are marked as external so that following them causes a full reload and a 404 is shown only in the appropriate case. Bug: Issue 8373 Change-Id: I1cad36de97786a0f9af42e08105ab485fa198a15
This commit is contained in:
		
				
					committed by
					
						
						Paladox none
					
				
			
			
				
	
			
			
			
						parent
						
							b4cd3067e0
						
					
				
				
					commit
					00635a9928
				
			@@ -274,6 +274,12 @@
 | 
			
		||||
      // makes assumptions that work for the GWT UI, but not PolyGerrit,
 | 
			
		||||
      // so we'll just disable it altogether for now.
 | 
			
		||||
      delete linkObj.target;
 | 
			
		||||
 | 
			
		||||
      // Becasue the "my menu" links may be arbitrary URLs, we don't know
 | 
			
		||||
      // whether they correspond to any client routes. Mark all such links as
 | 
			
		||||
      // external.
 | 
			
		||||
      linkObj.external = true;
 | 
			
		||||
 | 
			
		||||
      return linkObj;
 | 
			
		||||
    },
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -60,9 +60,9 @@ limitations under the License.
 | 
			
		||||
        {url: 'url', target: '_blank'},
 | 
			
		||||
      ].map(element._fixMyMenuItem),
 | 
			
		||||
      [
 | 
			
		||||
        {url: '/q/owner:self+is:draft'},
 | 
			
		||||
        {url: 'https://awesometown.com/#hashyhash'},
 | 
			
		||||
        {url: 'url'},
 | 
			
		||||
        {url: '/q/owner:self+is:draft', external: true},
 | 
			
		||||
        {url: 'https://awesometown.com/#hashyhash', external: true},
 | 
			
		||||
        {url: 'url', external: true},
 | 
			
		||||
      ]);
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user