monitor existing, then disable the ability to toggle the indicator.
NB: This is for silly people who (for whatever reason) decide that
it's a good idea to try and turn off their Only monitor.
NB: Fixes Phab Ticket T257
Signed-off-by: Chris Michael <cp.michael@samsung.com>
- Add previous monitor geometry to smart data structure.
- When we set the crtc, also set the monitor current geometry.
- Add function to return the previous monitor geometry.
- On a mouse up, check for monitor location difference versus previous
geometry, if nothing changed then we have no 'move' to do.
- When we start a resize, record the previous geometry and raise the
monitor.
- When a monitor is moved/resized we call the position_update function
which already loops all monitors, so no need to loop them twice.
- Fix position_update function to allow some Snapping Fuzziness so
that on a move/resize any adjoining monitors (within tolerance) will
more reliably snap to each other.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
After a monitor has been moved, snap it to the closest monitor.
NB: This should fix cases where a monitor could not be positioned next
to another monitor which had a resolution of 1368. Previously, the
second monitor could only move to 1366 due to a rounding issue when
converting coordinates to virtual. Now, the second monitor (when
finished moving) will Snap to the proper position.
NB: (Currently) In order for the snapping to work, either the
monitors' X axis or Y axis must be equal. Ideally, this should be
fixed to allow for some percentage of position flexibility.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
smart data's list of modes. This will get freed when the dialog closes.
Fix some formatting for 80 columns.
NB: Should fix etrunko crash ;)
Signed-off-by: Chris Michael <devilhorns@comcast.net>
it has no mode set yet, then we try to get the preferred mode. If that
fails we will try the crtc size, if That fails we will fallback to a
safe 640x480. When getting preferred size, if the output does not
specifiy a preferred mode (but does list availabe modes), then we will
assume the largest size.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
outputs to zero, and free any allocated outputs before trying to apply
settings.
Also, check for valid mode (not 0) before trying to fetch mode_info.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
NB: If you have more than one output, XRandR has the option/support to
set a specific monitor as the primary output. These changes allow some
distinction in the dialog between which output is primary (a faint
glow around the monitor). This is just the "display" portion of
Primary Output support ... next is a method to Change that.
Signed-off-by: Chris Michael <devilhorns@comcast.net>
Add function to get a monitor's preferred mode size.
Add function to find any clones of a monitor.
Add function to find a valid crtc for an output
NB: Raster, this should fix your reported problem ;)
Signed-off-by: Chris Michael <devilhorns@comcast.net>
If a monitor gets re-enabled and no current mode is set (which is
typically the case), then find a mode based on size.
Signed-off-by: Chris Michael <devilhorns@comcast.net>
When we call "grid_set" (as a result of the grid object moving or
resizing), we should update the monitor position text.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
Some people have reported that resizing is difficult, or that they
could not get to the max resolution of their monitor(s). Skipping the
refresh rate check during resolution finding fixes that ... With a big
fat Gotcha !!! because now after changing resolutions, the refresh
rate May not match what was previously selected....
So, as a word of CAUTION: After you set a resolution you should now
Verify your Refresh Rate before Applying, else you may be getting an
undesirable rate :/
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
geometry.
Add a geometry_get function for monitor.
Fix up cloning code to work properly with different size
parents/children.
Add a monitor_clone_parent_get function.
When applying changes, also use crtc_clone_set function.
Add smart callback for monitor_moved to tell randr widget it may need
to shuffle things around.
Use output mouse position, not canvas position.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84228
Reduce position text set calls and just do it on smart_move.
Add a changes_apply function.
Add code to record changes to a monitor.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84217
Add function to apply changes.
Add callback hook for monitor(s) changed.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84216