Your comments

Another feature related to screensavers would be to have the option to show a popup instead of a page. That way when the user touches the screen, only the 'screensaver' popup is hidden and all other pages/popups that were opened are still open.

But I guess having the option a.pivovarov describes (an EVENT_SCREENSAVER event) would be the best option.

Okay, I would've never thought this grouping feature worked like that. If I place the 2 popups in a folder, can I show/hide that folder at once?

As soon as I place the 2 popups in 1 group, and I call ShowPopup for each one, only one of them opens.

They are both in "New Group".

I call Show Popup 2 times:

Only "Menu" opens.

As soon as I remove them from the group, it starts working immediately.

I have a menu that consists of 2 popups. Each with a different effect.

The left part (not transparent) slides in from the left, the right part (partial transparent) fades in.

When I open and close the menu I have to have 2 IR.ShowPopup() and IR.HidePopup calls, I thought the grouping feature could come in handy now.

I've also been wanting this for some time. Using the GlobalListener means I have to keep track of all the created buttons and the feedbacks they are linked to, to be able to update the state of the correct button.

It would be a lot easier if we could do (for example):

IR.GetItem("Page 1").GetItem("Button 1").AddRelation(IR.GetDevice("Device 1").GetFeedback("Feedback 1");

Ok, so it already exists, but it's not documented?

I honestly don't understand what you mean with this answer.

I'm not using i3 Pro to play video, I call another application to play the video. I am not using i3 Pro to control an external application, the question was never about controlling an external application. The question is about i3 Pro being on top of all other windows/applications even though it's not running full screen and the "Always on top" option is disabled.

But when i3 is not in full screen, it also doesn't work... 

OR, AND, NOT items can be used only for Boolean variables

That is not true, in the scheme above the "From Tag" items are linked to feedbacks that return a value between 0 and 100. And that works fine because everything other than 0 in a boolean world is true. So in the scheme if any of the Tag feedbacks return a value >0, the end result "To Tag" is true. If all return 0, the To Tag is false.