[GH-ISSUE #864] Feature Request Dimensions #686

Open
opened 2026-05-05 06:56:12 -06:00 by gitea-mirror · 8 comments
Owner

Originally created by @nowell-morris on GitHub (Sep 3, 2020).
Original GitHub issue: https://github.com/debauchee/barrier/issues/864

I am wondering if we could make our "configure server" aware of a double screen. Right now I have to go to the right, then up, then left to reach the monitor in the top left. But since my server is dual screen, could the configuration be aware of that and allow me to go up into the other screens depending upon which screen I am moving from?
Server setup:
image
my screens:
image

Originally created by @nowell-morris on GitHub (Sep 3, 2020). Original GitHub issue: https://github.com/debauchee/barrier/issues/864 I am wondering if we could make our "configure server" aware of a double screen. Right now I have to go to the right, then up, then left to reach the monitor in the top left. But since my server is dual screen, could the configuration be aware of that and allow me to go up into the other screens depending upon which screen I am moving from? Server setup: ![image](https://user-images.githubusercontent.com/53183382/92139315-6d384a80-edc4-11ea-8391-9cc2d650dadd.png) my screens: ![image](https://user-images.githubusercontent.com/53183382/92139616-d455ff00-edc4-11ea-8725-787188645cdb.png)
Author
Owner

@Absentity commented on GitHub (Sep 25, 2020):

I'd like this too eventually. As a workaround until something like this exists, you can set this up manually.

(As of Barrier 2.3.3)

  1. From the Barrier window menu, go to Barrier > Save Configuration
  2. Edit the links section like below. Note that the numbers are percent, 0-100. 0 starts at the top and the left. You might need to tinker.
  3. Back in the Barrier window, switch to "Use existing configuration" and put in your modified config.
  4. Click Reload
  5. Cheers!

This is kind of like what my setup is:

# +--------+ +-----------+
# |   A    | |           |
# |        | |           |
# +--------+ |           |
# +--------+ |           |
# |   B    | |   DESK    |
# |        | |           |
# +--------+ |           |
#            +-----------+
#
#
section: links
	B:
		right = DESK(43,55)
		up = A
	A:
		right = DESK(0,43)
		down = B
	DESK:
		left(0,43) = A
		left(43,100) = B	
end

Sadly, I don't remember where I learned this. I add "synergy" to my searches sometimes to find what I need.

<!-- gh-comment-id:699031655 --> @Absentity commented on GitHub (Sep 25, 2020): I'd like this too eventually. As a workaround until something like this exists, you can set this up manually. (As of Barrier 2.3.3) 1. From the Barrier window menu, go to Barrier > Save Configuration 2. Edit the links section like below. Note that the numbers are percent, 0-100. 0 starts at the top and the left. You might need to tinker. 3. Back in the Barrier window, switch to "Use existing configuration" and put in your modified config. 4. Click Reload 5. Cheers! This is kind of like what my setup is: ``` # +--------+ +-----------+ # | A | | | # | | | | # +--------+ | | # +--------+ | | # | B | | DESK | # | | | | # +--------+ | | # +-----------+ # # section: links B: right = DESK(43,55) up = A A: right = DESK(0,43) down = B DESK: left(0,43) = A left(43,100) = B end ``` Sadly, I don't remember where I learned this. I add "synergy" to my searches sometimes to find what I need.
Author
Owner

@nowell-morris commented on GitHub (Sep 28, 2020):

Absentity, this is fantastic! I was able to use this approach and improve my setup. I can directly shift from client back to server whereas I could not before. For whatever reason, I still have to connect to clients with my original post details (in a hooked path). It could be that I need to restart all the machines together, which I have not yet had time to do all at once. But I will try it out and I will take your suggestion at searching more troubleshooting steps with "synergy" as potential help in finding them.

<!-- gh-comment-id:699997674 --> @nowell-morris commented on GitHub (Sep 28, 2020): Absentity, this is fantastic! I was able to use this approach and improve my setup. I can directly shift from client back to server whereas I could not before. For whatever reason, I still have to connect to clients with my original post details (in a hooked path). It could be that I need to restart all the machines together, which I have not yet had time to do all at once. But I will try it out and I will take your suggestion at searching more troubleshooting steps with "synergy" as potential help in finding them.
Author
Owner

@AcousticRand commented on GitHub (Oct 9, 2020):

A similar issue that cannot be solved by the solution using partials (i.e. parenthesis with % markers):

+----++----++----+
| 3A || 1A || 4A |
+----++----++----+
+----++----++----+
| B  || 2A || C  |
+----++----++----+
A=linux Server Ubuntu 20.04
B=linux Client Ubuntu 18.04
C=windows Client

In order to get to B or C from computer A, I must move from 2A to 1A, and then left or right across 3A or 4A to get to B or C respectively. I'm guessing this is because it recognizes my left and right-most edges as 3A and 4A.
So all that to say that I'd appreciate the ability to customize the layouts with monitor granularity (unless I'm missing something obvious, which is entirely possible).

<!-- gh-comment-id:706255860 --> @AcousticRand commented on GitHub (Oct 9, 2020): A similar issue that cannot be solved by the solution using partials (i.e. parenthesis with % markers): ``` +----++----++----+ | 3A || 1A || 4A | +----++----++----+ +----++----++----+ | B || 2A || C | +----++----++----+ A=linux Server Ubuntu 20.04 B=linux Client Ubuntu 18.04 C=windows Client ``` In order to get to B or C from computer A, I must move from 2A to 1A, and then left or right across 3A or 4A to get to B or C respectively. I'm guessing this is because it recognizes my left and right-most edges as 3A and 4A. So all that to say that I'd appreciate the ability to customize the layouts with monitor granularity (unless I'm missing something obvious, which is entirely possible).
Author
Owner

@nowell-morris commented on GitHub (Oct 9, 2020):

just as following up - if you look at my original picture of my four monitors, I can do a counter-clockwise circle now through all 4 monitors, but I cannot do the same path in a clockwise fashion. I can leave the top left monitor down to my server (displays at the bottom) in relation to the % that I designated like Absentity suggested. But if I try to move upward from my bottom left monitor to the one above it, it will not work. I did reboot everything. I do have updated barrier packages on everything. I made sure that DNS was resolvable by all of the machines in question (being able to look each other up by name and nickname).

<!-- gh-comment-id:706336546 --> @nowell-morris commented on GitHub (Oct 9, 2020): just as following up - if you look at my original picture of my four monitors, I can do a counter-clockwise circle now through all 4 monitors, but I cannot do the same path in a clockwise fashion. I can leave the top left monitor down to my server (displays at the bottom) in relation to the % that I designated like Absentity suggested. But if I try to move upward from my bottom left monitor to the one above it, it will not work. I did reboot everything. I do have updated barrier packages on everything. I made sure that DNS was resolvable by all of the machines in question (being able to look each other up by name and nickname).
Author
Owner

@NicolasGoeddel commented on GitHub (Jul 15, 2021):

I have a similar issue. I've got this setup:

      +-----+
      |  A2 |
+-----+-----+-----+-----+
|  A1 |  A3 |  B1 |  B2 |
+-----+-----+-----+-----+

A and B are Ubuntu machines. Every monitor has a resolution of 1920x1080.
If the cursor is on A2 and I go right I end up in the upper half of B1.
If the cursor is on A3 and I go right I end up in the lower half of B2.
And vice versa. This is a bit annoying.

This is what I want:
Going right from A2 should not be possible.
Moving between A3 and B1 should be flawless. So don't map the height of A3 to the lower half of B1.

My guess is that Synergy sees the configuration like this:

      +-----+-----------+-----------+
      |  A  |           |           |
+-----+-----+     B1    |     B2    |
|  A  |  A  |           |           |
+-----+-----+-----------+-----------+

This is especially annoying if the configuration is like this:

      +-----+
      |  A2 |
+-----+-----+-----+-----+
|  A1 |  A3 |  A4 |  B1 |
+-----+-----+-----+-----+

Here it behaves like in the first example:
The right edge of A2 is mapped to the upper half of B1.
The right edge of A4 is mapped to the lower half of B1.

This can be really frustrating when you move your cursor from B1 to the left and you land in A2.

<!-- gh-comment-id:880501274 --> @NicolasGoeddel commented on GitHub (Jul 15, 2021): I have a similar issue. I've got this setup: ``` +-----+ | A2 | +-----+-----+-----+-----+ | A1 | A3 | B1 | B2 | +-----+-----+-----+-----+ ``` A and B are Ubuntu machines. Every monitor has a resolution of 1920x1080. If the cursor is on A2 and I go right I end up in the upper half of B1. If the cursor is on A3 and I go right I end up in the lower half of B2. And vice versa. This is a bit annoying. This is what I want: Going right from A2 should not be possible. Moving between A3 and B1 should be flawless. So don't map the height of A3 to the lower half of B1. My guess is that Synergy sees the configuration like this: ``` +-----+-----------+-----------+ | A | | | +-----+-----+ B1 | B2 | | A | A | | | +-----+-----+-----------+-----------+ ``` This is especially annoying if the configuration is like this: ``` +-----+ | A2 | +-----+-----+-----+-----+ | A1 | A3 | A4 | B1 | +-----+-----+-----+-----+ ``` Here it behaves like in the first example: The right edge of A2 is mapped to the upper half of B1. The right edge of A4 is mapped to the lower half of B1. This can be really frustrating when you move your cursor from B1 to the left and you land in A2.
Author
Owner

@NicolasGoeddel commented on GitHub (Jul 15, 2021):

I was able to solve my problem by using the configuration file. But it would still be nice to be able to configure that in the GUI.

<!-- gh-comment-id:880523023 --> @NicolasGoeddel commented on GitHub (Jul 15, 2021): I was able to solve my problem by using the configuration file. But it would still be nice to be able to configure that in the GUI.
Author
Owner

@NicolasGoeddel commented on GitHub (Jul 15, 2021):

Here is the link to the syntax of the configuration file: https://symless.com/help-articles/creating-text-config-files

<!-- gh-comment-id:880530933 --> @NicolasGoeddel commented on GitHub (Jul 15, 2021): Here is the link to the syntax of the configuration file: https://symless.com/help-articles/creating-text-config-files
Author
Owner

@chrismoran-mica commented on GitHub (Mar 16, 2023):

A similar issue that cannot be solved by the solution using partials (i.e. parenthesis with % markers):

+----++----++----+
| 3A || 1A || 4A |
+----++----++----+
+----++----++----+
| B  || 2A || C  |
+----++----++----+
A=linux Server Ubuntu 20.04
B=linux Client Ubuntu 18.04
C=windows Client

In order to get to B or C from computer A, I must move from 2A to 1A, and then left or right across 3A or 4A to get to B or C respectively. I'm guessing this is because it recognizes my left and right-most edges as 3A and 4A. So all that to say that I'd appreciate the ability to customize the layouts with monitor granularity (unless I'm missing something obvious, which is entirely possible).

Instead of this:

+----++----++----+
| 3A || 1A || 4A |
+----++----++----+
+----++----++----+
| B  || 2A || C  |
+----++----++----+
A=linux Server Ubuntu 20.04
B=linux Client Ubuntu 18.04
C=windows Client

Try this:

+----++----++----++----++----+
|    || 3A || 1A || 4A ||    |   
|    |+----++----++----+|    |   
|    |+----------------+|    |   
| B  ||       2A       || C  |
+----++----------------++----+
A=linux Server Ubuntu 20.04
B=linux Client Ubuntu 18.04
C=windows Client

With your links section looking something like this

section: links
  A:  
    left(0,100) = B(0,100)
    right(0,100) = C(0,100)
  B:  
    right(0,100) = A(0,100)
  C:  
    left(0,100) = A(0,100)
end

Does that work?

<!-- gh-comment-id:1471581880 --> @chrismoran-mica commented on GitHub (Mar 16, 2023): > A similar issue that cannot be solved by the solution using partials (i.e. parenthesis with % markers): > ``` +----++----++----+ | 3A || 1A || 4A | +----++----++----+ +----++----++----+ | B || 2A || C | +----++----++----+ A=linux Server Ubuntu 20.04 B=linux Client Ubuntu 18.04 C=windows Client ``` > > In order to get to B or C from computer A, I must move from 2A to 1A, and then left or right across 3A or 4A to get to B or C respectively. I'm guessing this is because it recognizes my left and right-most edges as 3A and 4A. So all that to say that I'd appreciate the ability to customize the layouts with monitor granularity (unless I'm missing something obvious, which is entirely possible). Instead of this: ``` +----++----++----+ | 3A || 1A || 4A | +----++----++----+ +----++----++----+ | B || 2A || C | +----++----++----+ A=linux Server Ubuntu 20.04 B=linux Client Ubuntu 18.04 C=windows Client ``` Try this: ``` +----++----++----++----++----+ | || 3A || 1A || 4A || | | |+----++----++----+| | | |+----------------+| | | B || 2A || C | +----++----------------++----+ A=linux Server Ubuntu 20.04 B=linux Client Ubuntu 18.04 C=windows Client ``` With your links section looking something like this ``` section: links A: left(0,100) = B(0,100) right(0,100) = C(0,100) B: right(0,100) = A(0,100) C: left(0,100) = A(0,100) end ``` Does that work?
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/barrier#686
No description provided.