Open martinvonwittich opened 4 years ago
Hello,
1 - Request: configure the filters per domain I'll provide first a simple black list. You should be able to set something like "https://my.zammad.example/#ticket/zoom/*" This should solve your problem. For the filters per domain I'll see later.
2 - ...navigates the tab to the new URL (but without reloading the tab).
If I've correctly understood your idea, this is not possible. If I change the url of the tab without loading it then you're still on the page of previous url. So when you click on the "submit" button it will be linked the previous url not the new I've pasted.
2 -
...navigates the tab to the new URL (but without reloading the tab).
If I've correctly understood your idea, this is not possible. If I change the url of the tab without loading it then you're still on the page of previous url. So when you click on the "submit" button it will be linked the previous url not the new I've pasted.
I'll try to explain. Let's assume I currently have one ticket in Zammad opened: https://my.zammad.example/#ticket/zoom/1234
When I now paste the URL to another ticket in the address bar while I'm the Zamad tab, let's say https://my.zammad.example/#ticket/zoom/1235 , Zammad will use the hashchange
event listener to catch this. Then it will load the new ticket from the server via AJAX, and refresh its view with JS to show me the new ticket. Unfortunately there doesn't seem to be a public demo to illustrate that, so I've made a short video that shows this: https://imgur.com/a/8mZH2mg
The nice thing about this is that Zammad doesn't need to completely reload here, which would take several seconds. I've made another video that illustrates a complete reload: https://imgur.com/a/4aOlSgp
So if it were possible to somehow navigate the old tab to the new URL while allowing the page to use the hashchange
event listener, this would result in a noticeable speedup for users. If it's not possible, this is of course fine too; DTC (for Firefox) and Clutter Free (for Chrome) are already a significant improvement for using Zammad!
Thanks for your work!
I second @martinvonwittich's request. This would also be fantastic for domains like facebook, where you want, effectively, a 'facebook tab' - any new URL should be routed to that tab to create the state change, and if I were to type 'facebook.com' in a new tab URL and hit enter I should simply be directed to the existing tab.
This would save me quite a lot of trouble.
For a given blacklist item, being able to specify if the URL should be set but the page not reloaded vs. the URL set and the page reloaded would be fantastically useful
@dnknn no, I don't. This is not about intentionally duplicating tabs with a menu item. It's about accepting text input and redirecting to a preëxisting tab.
Any update?
@turing I understand what @martinvonwittich needs and why it will work.
It would be ...the URL should be set but the page not reloaded...
I'm less sure about vs. the URL set and the page reloaded
"any new URL should be routed to that tab to create the state change, and if I were to type 'facebook.com' in a new tab URL and hit enter I should simply be directed to the existing tab."
This is what I'm getting at.
Say I have an existing facebook tab in a window somewhere. I open a new tab in another window and type facebook.com/ When I hit enter, I am instantly looking at the other tab instead of having made a duplicate.
Say I command click a link to a facebook URL - intending to make a new tab, instead the URL of the facebook tab is set to the target URL and the page loads.
I don't know how much flexibility you have to move tabs between windows, but all of this is about ensuring there are not numerous duplicate copies of a tab with the same domain for certain sites.
There are single-page applications like Zammad where only a single tab of the application may be opened at the same time; if you attempt to open multiple tabs (e.g. to different tickets), all tabs but the most recently opened one will break. This is a very common issue in our company where we send ticket links to each other via chat; every time you open such a link, Zammad will have to load in the new tab (which takes several seconds), and then all your other Zammad tabs will display an error message. If you reload one of these broken tabs, it'll work again, but break the other tab that was working before because you always can only have one tab active at a time.
The ticket links look like this:
https://my.zammad.example/#ticket/zoom/1234 https://my.zammad.example/#ticket/zoom/1235 https://my.zammad.example/#ticket/zoom/1236
For this scenario, it would be very useful if it were possible to configure the filters per domain. E.g. by default, I would want to have all the filters (ignore hash/search/path) disabled, but for the specific domain my.zammad.example, I would want at least the "ignore hash" filter enabled so that DTC ensures that only one Zammad tab is opened.
Not sure if this is possible, but DTC would even be more useful still if it had the ability to de-duplicate tabs by focusing the old tab and navigating it to the URL of the new tab while closing the new tab. For example:
The advantage here would be that navigating to the new URL in the old tab without reloading it enables Zammad to load the new ticket practically instantly, without completely reloading the SPA, which would take several seconds.