I tested this with a mock up data where I had inner join. I also defined data source filter. Once everything was done, I created a viz. Finally to find out what Tableau does first, I checked log files. It seems that join applies before data source filters. Check log and tdeserver files that you shall find in Documents-->My Tableau Repository --> Logs file to ensure the order.