Here is what we added in the 2.2 version
Low Level Key presses (Windows only)
In previous versions, Touch Portal used virtual keys for their key pressing system. This works fine for most applications but it has it disadvantages. From this version we added a low level key press system that mimics keyboard presses a lot better. This has the following advantages:
- More applications and games will catch them.
- Less software will block them.
- More keys are possible like Left Control, Right Control, Left Shift, Right Shift, Left Alt, Right Alt and a lot more.
- OEM keys allow for different kind of language keyboard keys such as german specific keys like the ß.
- Arrow keys are now really the arrow keys and not the numpad arrow keys.
In this version you can also select multiple keyboard layouts to access the keyboard specific keys. We have keyboard layouts from a lot of countries available such as French, Spanish, Dutch, Portugese, German, Danish, Finnish, Swedish, Norwegian, Italian, Canadian-French and Belgium.
On Hold Button support
You can now add functionality when holding a button on your page. You can use this for example with push-to-talk functionality or volume control. You can set a selection of actions to the behaviour and you can also make the button change visuals during the hold.
The button above is an example of a button used for push to talk. When you press and hold the button on your device, it will change the buttons visuals to red and the text to "Talking". The action is to press and hold the key "T".
You can only use actions that make sense to use for an on hold functionality such as keys, volume changes and that sort of actions. Touch Portal filters the available actions for you in the action list.
File input / Output actions
This version of Touch Portal will have a lot of file handling support.
Writing to file
You can now write to a specific file. You can write any value and you can also write custom states, dynamic text and plugin states to a file. Writing to a file clears the file and will only contain the specified text after using the action.
Append to file
While the write action will overwrite everything in the file this action will append the given text to the end of the file. Also with the options to add custom states, dynamic texts and plugin states.
This action will delete the give file. The file will be deleted from disc.
Listening to file changes
We have added an event that will keep track of when a specific file is changed. With this you can listen to a file which is being changed from a third party piece of software and when it is changed, Touch Portal triggers and allows you to act on this event. In combination with the new file IO actions you can use this value in any way you like in Touch Portal.
IF File logic function
You can now also create IF statements with file operations such as; does the file exist, is the content equal to a given value or does it contains a specific value.
File contents to Custom state action
We have added this action so that you can set the content of a file to a custom state. This way you can use the content of a file within Touch Portal dynamically.
8-bit PNG support
The icons from Nerd Or Die are very popular but unfortunately they make those icons in 8-bit. Touch Portal did not properly support 8-bit icons before but from this version you can load up 8-bit icons without any issue. No more converting those nice icons to be able to use them in Touch Portal!
With the previous versions you were already able to open applications and start scripts but opening a normal file was not possible. In this version you can by using the OS to open every (by the OS supported) file. So you want a button to open a specific PDF document? you can! You want to open your graphics file? You can!
Dynamic text functionality extended
We have taken the time to add the ability to add custom states, plug-in states and Touch Portal dynamic text object to a lot of actions. You can use them with our new file io actions but also with Twitch, Twitter, HTTP, Write Texts, Open Url and much more.
We have added a multi select system for actions in your action list. You can select these actions and copy paste them. Press the Ctrl key while left clicking on the actions you want to select.
We have made some nice improvements on the buttons this version
Gradient background color direction
From this version you can change the background color gradient direction. We have included the horizontal and diagonal option in addition to the vertical option which was standard in the previous versions.
You can now set the transparency on colors as well. So with custom backgrounds you are now able to add semi-transparent colors to your button background.
Better representation preview button
We have improved the button preview. It has the same aspect ratio as the button has on the page. We also improved the font size to match the page and device better. The font will also be scaled but the aspect ratio to the button size will be correct. The preview button should now represent the reality far better than before.
New Logic functions
We have extended the logic section this version to allow for even more complex but powerful macro buttons!
Increment Custom state value
You can now increment a custom state value with the given value. The custom value needs to be a integer number. This new action allows you to add number logic in your states and flows. You could for example make a multi-option press button. Each time you press the button it will increment the state by 1 and then execute a different action on each value.
Randomize Custom state value
You can now set a custom state to a random value within a range.
IF equal, not equal, higher than, lower than
You can now check if a custom state is equal, higher, lower or not equal to a specific number value
In the previous version we introduced a quick integration of making backups of your Touch Portal setup to ensure that certain Windows updates did not remove everything, leaving you with nothing. The downside was that you needed to restore the backup manually and it was not clear where they went. This version we have added a backups section in the settings screen:
This will show you the list of backups and you can manage them.
We have added a lot of plug-in improvements in this version! First the biggest change is that we added it to the settings screen.
On this screen you can manage your plug-ins. But this is not all we have changed or added:
- We have added the ability to have the plug-in state interpreted as an image. The plugin state must be in a base64 representation of an image.
- We have added the ability to have the plug-in state interpreted as a color.
- We have improved the plug-in communication performance. Message are now being processed a lot quicker.
- We have added the plugin state and an option in the On events
- We have added the ability to add FILE data fields.
- We improved the API documentation
New OBS features
Again in this new update we serve our OBS users. This time with some nice additions.
- Volume up and down now work with ALL sources (audio and normal)
- Added recording states Paused and Resumed to the OBS recording events, if statements and actions
- Made the last actions of OBS inline as well
- Grouped the start and stop state into one inline action
- Added a set scene filter visibility action
In this update we have also taken on some Twitch features:
- Added the Touch Portal dynamic text representing the Twitch viewers. You can now show the current viewer count on a button in Touch Portal.
- Added the Touch Portal dynamic text representing the Twitch followers. You can now show the current amount of followers in a button.
- Added an event for when you get a new subscriber on Twitch.
- Added the Touch Portal dynamic text representing the last subscribed user.
- Added the Touch Portal dynamic text representing the last re-subscribed user.
- We have added the Channel Point redeemed event to Touch Portal. It can be used to listen to Twitch for when users redeem channel points for rewards. A link to a small tutorial on channel points redemption in Touch Portal.
- Added an event that listens to chat messages and allows you to act on certain keywords.
- Added the Touch Portal dynamictext representing the last chat messages of twitch users.
- We have added the Bits received event to Touch Portal. It can be used to listen to when your viewers send you Bits.
We have also added more actions or improved current ones in several categories:
- Added an Image to Clipboard action which will store the given image to the clipboard. You can for example use the low level key press after this to do a Ctrl + V to paste the image somewhere.
- Added an Hold key press action which allows to hold a key while executing actions. We used the low level key system for this. With this you execute multiple action while the key is being press. Some software packages need you to do mouse clicks while pressing Ctrl for example. With this action you can do this. Our example here will write a exclamation sign (which is the alternate for the 1-key on a keyboard):
- Added a copy file to the clipboard action. Like with the image to clipboard action, you can copy a file to the clipboard.
- Added the When Plugin state changes event that listens to changes in the plugin states. It can also check the value in the same way as the IF statement is capable of.
- We added a Stop Execution action which can be used to stop the execution of an action flow. This is handy when you want to stop timed and repeating functionality.
Performance boost & improvements!
- Improved the timer action to be able to select seconds and minutes besides milliseconds.
- We improved the comment action. You can now add multiple lines and you can use it properly in the On Events tab of your button.
- All run actions are now inline actions. We have also extended the windows script running to allow .cmd scripts. For batch files you can now select the option to open the command prompt window instead of running in the background.
- We have also added new functionality to the Change Button Visuals actions. This action now includes the ability to change the text size and to change the button background gradient direction.
- We increased the max repeat count of our Repeat X amount action to 999.
- We improved the layouts of all HTTP actions and included the possibility to add dynamic texts, custom states and plugin states.
- We improved the mouse click action by adding the ability to double click and to click at the position of mouse instead of a predefined location.
- We improved the way pages were being stored and saved. Updating now cost less performance making using Touch Portal feel smoother.
- We improved dragging of buttons and deleting buttons where the hanged for a few milliseconds at the end of dragging/deleting.
- We improved the page deletion time. Processing takes a lot less time. Improving the feel of performance of Touch Portal.
This version we have again upgraded and fixed some visuals in our app
What else ?!
- We have added the same category blocks for the page settings and grid settings just like the custom states.
- We fixed the category blocks having some corner color issues
- We improved the alignment of the visuals change screen
- We added a small border around windows. This will make the window boundaries more clear.
- We have changed the location of the yellow bar for the free version to the top of the application, leaving the bottom bar for other information.
- We have added splashscreen for Touch Portal. This because the start up time was increasing with all the new integrations we added previous and current version.
- Each separate window now has an Touch Portal icon, no more java default icons
- We have added placeholders for the On Press tab and the On Event tab in the case there is no action yet. It should a user-friendly message that you can add actions with the menu on the left.
- Finally fixed the ugly white borders for the grid size selection fields.
- We have reworked the upgrade information popups. You will now see right away which upgrade you require for which action or setting. It will give you an example and a full list of all benefits from that specific upgrade.
- We removed the ability to add IF statements to events as they are not allowed there.
- We have added multiple bridge support for Philips Hue.
- We added extra logging for Twitch chat functions to be able to troubleshout better using the Touch Portal log files
- We changed a lot in the logging functionality to improve value of the log file and improve the performance.
- You can now move actions to the top or bottom with the context menu quickly
- We have added some extra messages of information for free users so they understand that specific parts of Touch Portal are for a specific upgrade only.
- We have improved the icon pack screen which now allows you to delete an icon pack. The screen will also remember the last icon pack you used so the next time it opens you do not have to select the last used icon pack anymore.
- We improved the settings screen and rearranged a bit.
- We have added a connection indicator. This will show the user what the status is of the connection. This indicator shows the status of the last connection event. If it can only send and not receive it will show here.
- We have added new languages to Touch Portal!
- We have added that Touch Portal will remember on several places where you have been before. For example the folder location previously used with Icon packs or Plug-ins.
- We have added a button to look up the change history of Touch Portal. This will show you the changelog usually shown when you use a new version for the first time.
- You can now also add the custom state in text fields using the add-tag button.
- We made a lot of textual changes to better present information to the user.
- We added a safeguard for resizing the button detail screen ensuring the screen will never be higher than screen height.
And of course we have fixed some bugs:
- Delete button in the main screen will not try to delete anything when not in multi-select mode.
- We fixed the issues with exporting and importing pages. Exporting pages from version 2.2 should contain all the required elements for pages (except global custom states as these are global and not connected to a page.)
- Fixed settings screen save not functioning properly
- Fixed the simulate device resolution not functioning properly. It will now use the proper aspect ratio and go back to the default when not selected.
- Touch Portal will now refresh the current page when it reconnects. This way the device will show an old page no more.
- Fixed the dynamic texts when using with plug-ins. It did not properly interchange the text-codes with the proper values.
- Fixed open folder action not functioning correctly when using drives as a location to open.
- Fixed importing bug on very fast computers
- We fixed the page list with not including wrong values and directories.
- New pages cannot hold specific characters which are not allowed anymore.
- We fixed a lot of inline actions still able to open the edit screen for those actions
- Fixed the snapshot where it sometimes showed a white block
- Fixed the scene selection action for Streamlabs OBS where the scene was reset to the original selected scene.
- Fixed the grid changing spinners increase the value more than 2