A new version! We changed / added / fixed a lot again in version 2.2. Check it out below!
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, 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.
Delete file
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!

Open files
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.
Multi-select actions
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.
Button improvements
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.
Color semi-transparency
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
Managing backups
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.
Plug-in improvements
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
Twitch features
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.
Actions!
We have also added more actions or improved current ones in several categories:
New actions
- 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.
Improved actions
- 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.
Performance boost & improvements!
- 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.
Updated visuals
This version we have again upgraded and fixed some visuals in our app
- 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.
What else ?!
- 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.
Bugfixes
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