ozonos / atom-dock

Custom Dock for Ozon Desktop
GNU General Public License v3.0
72 stars 13 forks source link

Dock showing itself when window on secondary monitor is focused #44

Closed qzb closed 9 years ago

qzb commented 9 years ago

Usually I work on two displays. When I work on primary one dock behaves correctly, but when i focus some window on secondary one dock pops out on primary display.

me4oslav commented 9 years ago

Definitely not the desired designed behaviour. This is a bug. Can somebody fix that?

cldx commented 9 years ago

It's not really a bug. The Dock behaves like it's supposed to. There is no active Window blocking it so it pops out.

What would be desired behavior?

qzb commented 9 years ago

IMO dock should remain hidden. Current behavior is really annoying for me. Usually I have terminal app on primary monitor and browser on secondary, so when I try do something in browser dock covers three last lines of terminal.

satya164 commented 9 years ago

Hmm... How else do you determine if the dock should be visible or not?

Isn't the desired behaviour is to show when all windows covering it become unfocused.

@me4oslav Whta's the desired behaviour?

qzb commented 9 years ago

I think dock should be displayed on currently active monitor (if there are no focused windows which covers it). Alternatively dock should be visible when one of the following is true:

  1. there are no windows which covers it (focused or not),
  2. there are no focused windows which covers it and currently focused window lie on primary monitor,
  3. it was visible before window on secondary monitor was focused.
me4oslav commented 9 years ago

I shouldn't comment without having morning coffee first. And that's what I did in the morning. I will look at the bug report again tomorrow morning after I've slept enough and had caffeine. Right now the most useful thing I can write is Bonnie Tyler lyrics. :P

satya164 commented 9 years ago

@qzb

  1. Not an option. Since then you'll have to resize, move or unmaximize your windows to get the dock. And the dock will be not visible most of the time this way. Most people always have something maximized which will cover the dock. Then there is no point in intellihide.
  2. Didn't get it.
  3. I don't know if we can keep track of windows. But if we can, forget primary or secondary monitors. Show the dock only if it was visible before another window on a different monitor got focused.
qzb commented 9 years ago

@satya164

  1. I didn't mean to say that this should be the way to show the dock. I meant to say that dock should be visible when there is no windows which covers it. And currently it is. I wrote first two conditions because I wanted to describe all circumstances in which dock is visible.
  2. Ok. In other words dock should be visible when focused window is not covering it and this window is on the same monitor as dock. As I wrote, this is nothing new.
  3. It's exactly the point I have tried to make :-) Maybe I overcomplicated it with this primary and secondary monitors, I just wanted to distinguish monitor with a dock and rest of monitors.
kaidesu commented 9 years ago

I think the dual monitor scenario did make things a little complicated to follow. Here's a couple screenshots of what's being reported here:

screenshot 1

screenshot 2

ghost commented 9 years ago

But that is how intelli-hide works, isn't it?

Maybe for this use-case, an always hidden option is the best solution.

tomvanderlee commented 9 years ago

@AlexMex90 Indeed it is how intelli-hide works.

This issue is not a bug, it is how intelli-hide should work. If you want to see your terminal, move your terminal up a bit.

me4oslav commented 9 years ago

Here is what I think (this time after I've actually slept and had enough caffeine): The intellhide behaviour works in this way: If the current active window covers the dock - the dock hides. If not (even if non active window covers it) - the dock is visible; The dual monitors case is a tad trickier: should the dock A) always be on the primary monitor (aka the first) B) or on the monitor that has the currently active window? The usual solution that most docks do (no matter bottom, left, right or top) is A). Personally, though I thin B) makes a tad more sense, so I am a tad in favour of it. Having said that I rarely work with dual monitors, so I may not be the correct person to talk about this. Thoughts anyone?

tomvanderlee commented 9 years ago

I have multiple monitors and I would prefer option A. Most of the work is being done on the primary monitor and not much happening with the secondary other than IRC/Youtube/Music, so no need for a dock at the second monitor.

kaidesu commented 9 years ago

This issue is not a bug, it is how intelli-hide should work. If you want to see your terminal, move your terminal up a bit.

^ This. I don't think there's anything wrong with the current implementation.

Also, option A is preferred (I work with dual monitors as well).

me4oslav commented 9 years ago

It seems that people that use dual monitors prefer A. It is safe enough to close this?

tomvanderlee commented 9 years ago

@me4oslav I think it is!

qzb commented 9 years ago

Personally I prefer A too, but this problem affects scenario A as well. Usually I have terminal on one monitor and browser on another. For example when I have browser with documentation within on primary monitor and write something in terminal, dock covers content of browser window and it piss me off. And to be clear - switching windows positions is no solution for me.

If you doesn't have time to fix it, I can try to prepare pull request by myself.

kaidesu commented 9 years ago

But what would your solution actually be? It takes less than a second to simply resize your window above where the dock would show.

qzb commented 9 years ago

But I don't wont to reducing window's area. It is not a solution it is a poor workaround. I described my solution earlier - dock shouldn't show up when focus leaves a primary monitor (but is should remain visible if it already is). It doesn't affect people using only one monitor.