Commit Graph

49 Commits

Author SHA1 Message Date
Christopher Michael 6b1168b933 Add list of monitors to smart_data structure.
Add code to delete the monitors when randr gets deleted.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84128
2013-02-19 10:55:39 +00:00
Christopher Michael 468998fca6 Add initial start of code to create monitors.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84127
2013-02-19 10:55:36 +00:00
Christopher Michael 6b96e9c961 Add code to handle the layout object.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84119
2013-02-19 10:55:14 +00:00
Christopher Michael fbb5baea84 Initial rewrite of randr widget.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84116
2013-02-19 10:55:04 +00:00
Christopher Michael 0410b43549 Remove old randr widget code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84113
2013-02-19 10:54:55 +00:00
Christopher Michael 39e9f03048 No need to convert frame geometry to virtual...we can just compare
actual canvas geometry when doing collision detection.

Port the previous "JackDanielz" fix (using frame geometry vs using
object geometry) to the actual move function also.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82868
2013-01-16 09:01:30 +00:00
Christopher Michael 4a49bf8b05 When moving monitors around, use the geometry of the monitor frame to
determine collision/intersection for cloning reasons (needed due to
monitor object itself having some padding around the frame which was
causing erroneous intersection calculations).

NB: Calling this one the JackDanielZ fix ;)

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82867
2013-01-16 08:41:48 +00:00
Christopher Michael 11ab438c80 When we create monitors and are checking for clones, just use x/y
position, not size for comparison.

When we create monitors, assign the proper crtc to the monitor.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82330
2013-01-07 07:39:57 +00:00
Christopher Michael 4fadc7bf7f When we initially create the monitors, also set the original cloned
value.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82326
2013-01-07 07:39:47 +00:00
Mike Blumenkrantz 580b884d41 fix uninitialized var in randr config dialog which potentially broke initial monitor layout
SVN revision: 81593
2012-12-21 21:35:17 +00:00
Christopher Michael 829558db50 Fix randr widget applying settings as per discussion with T_UNIX.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81376
2012-12-19 15:39:47 +00:00
Christopher Michael be20b9d15d Add some debugging for disabled monitors.
If we are trying to add a disabled monitor, check for possible outputs.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81368
2012-12-19 14:21:50 +00:00
Christopher Michael 7829e00b45 Comment out some debugging printfs.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81351
2012-12-19 11:04:35 +00:00
Christopher Michael 58ef1a0190 Remove root window as function parameter for apply function (not used
anymore).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81263
2012-12-18 15:16:49 +00:00
Christopher Michael 817207bad1 Be more proactive when we create monitors:
If during the process of monitor creation, we reach one that is
  cloned into a parent monitor, but the parent monitor has not been
  created yet, then add it to a deferred list so we can create it (and
  swallow it) into the parent monitor.

Make use of the existing e randr serialization to save/restore settings.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81255
2012-12-18 14:16:12 +00:00
Carsten Haitzler 92380c140d nth from eina list returns data. .not list node...
SVN revision: 81153
2012-12-17 15:31:36 +00:00
Christopher Michael 30484c09cf Fix TODO note for recent Enable/Disable commit.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81149
2012-12-17 14:29:02 +00:00
Christopher Michael 507e6a25fb Fetch all current monitor values once (rather than a fetch for each
change).
Add code to apply Disabled/Enabled state.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81140
2012-12-17 13:42:15 +00:00
Christopher Michael 059d1139fe Provide method to compute a proper layout size (needed for case of
blank config).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81135
2012-12-17 12:55:35 +00:00
Christopher Michael e49d7dcad2 Remove blank line.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81132
2012-12-17 12:55:27 +00:00
Christopher Michael 54267c8ad8 Remove dead comment.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81131
2012-12-17 12:55:22 +00:00
Christopher Michael 91ddccec87 Fix monitor clone position for the case of "initial blank setup"
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81114
2012-12-17 10:22:01 +00:00
Christopher Michael 9ec140a681 Add code to start working with no previous config and nothing
specified in xorg (ie: blank setup). We will detect (manually) what is
cloned and setup accordingly. (NB: Still needs work).
Add function to find a monitor based on crtc id (used for blank setup
clones).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81111
2012-12-17 09:21:08 +00:00
Christopher Michael a3cf759911 Add function to randr widget to return the best layout size.
Modify widget creation to use randr layout size function:
  NB: Needed because we cannot rely on E_RANDR_12->current_size to
provide us with something usable.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81108
2012-12-17 09:20:59 +00:00
Christopher Michael 99d170a6a9 Comment out some debugging printfs.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81107
2012-12-17 09:20:56 +00:00
Christopher Michael fa0264ef5c Add function to return the list of monitors.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81106
2012-12-17 09:20:53 +00:00
Christopher Michael 2a4d3cb73e Add smart callback hook for monitor changed.
Add functions to return randr widget changed state.
Add function to randr widget so we can apply changes.
Add single randr_changed_set function (reduce duplicated code).
Use E_INSIDE to determine cloning.
Remove some printfs.
Call randr_changed_set where needed.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81105
2012-12-17 09:20:49 +00:00
Christopher Michael a23ebcd608 Introduce new RandR dialog which fixes issues that the past one had.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81094
2012-12-17 09:20:07 +00:00
Christopher Michael 467da0c1a5 Add some debugging (will be removed after testing).
Add function to handle packing a monitor into the layout.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81078
2012-12-17 09:19:22 +00:00
Christopher Michael 1fce126fe4 Start of new randr dialog & monitor widget.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81075
2012-12-17 09:19:13 +00:00
Christopher Michael 3b74f38de2 Remove old randr code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81071
2012-12-17 09:18:59 +00:00
Christopher Michael 00fb03ce4c E (RandR): Remove unused function & prototype.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78188
2012-10-18 13:00:48 +00:00
Christopher Michael 4a09315601 E (RandR): Better monitor movement/snapping.
NB: Still not 100%. There are some corner cases where things fall
through :( If someone wants to jump in and help finish this off, that
would be great :) It's very close to being done.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78186
2012-10-18 12:59:32 +00:00
Christopher Michael c59e752325 E (RandR): Add function to get if randr widget changed.
Rework the "changed" code so that now Apply will enable/disable
correctly based on what changes are in the monitors.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77873
2012-10-11 12:42:37 +00:00
Christopher Michael 01edd96d74 E (RandR): Fix issue where disabled monitors would not show up
correctly.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77761
2012-10-10 12:59:56 +00:00
Christopher Michael 236117cd86 E (RandR): Do not 'snap' monitors on rotation. It changes the position
of them in the layout and thus causes problems when we Apply these
changes.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77720
2012-10-10 08:14:20 +00:00
Christopher Michael 24127f1a01 Set randr widget to changed when we receive the proper signals,
regardless if monitor matches or not.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77643
2012-10-09 12:19:39 +00:00
Christopher Michael 6cca89c83f Make on/off indicator toggling also send a changed event to the RandR
widget.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77570
2012-10-08 09:13:30 +00:00
Christopher Michael c2521cbaaf Make RandR smart object support 'changed' so that the Apply button in
the config dialog can function properly.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77567
2012-10-08 08:39:39 +00:00
Christopher Michael 2dcd1bc3ba Make RandR dialog function as a Config Dialog.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77565
2012-10-08 07:56:18 +00:00
Christopher Michael 5ca309e0ad Remove dead code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77438
2012-10-04 13:14:33 +00:00
Christopher Michael 0f5cd63f5a E (RandR): Add function to return if a specific monitor is moving. Add
function to "reposition" a monitor when move is finished. Implement
basic monitor moving (still has some issues tho).



SVN revision: 77367
2012-10-03 12:03:00 +00:00
Christopher Michael 4b9e05d0fc E (RandR): Update __UNUSED__ function parameters.
SVN revision: 77316
2012-10-02 12:25:36 +00:00
Christopher Michael 146ee272a4 E (RandR): Implement common layout_adjust function. Used when we
resize or rotate a given monitor so that the position of any adjacent
monitors gets updated. Currently works when resizing or rotating.



SVN revision: 77315
2012-10-02 12:24:35 +00:00
Christopher Michael 778c584fc8 E (RandR): Scrollframe swallows the layout so don't use
smart_member_add.



SVN revision: 77314
2012-10-02 12:16:55 +00:00
Mike McCormack ee8f7529bc e: Fix warnings
Signed-off-by: Mike McCormack <mikem@atratus.org>

SVN revision: 77304
2012-10-02 11:21:17 +00:00
Christopher Michael 54984d38ef E (RandR): Reimplement "resizing other monitors" when a specific
monitor gets resized, so that we update the visual layout
appropriately. Also, do not raise "monitor_moved" callback for every
little move, rather wait until the move is finished and raise the
callback once.

NB: The "monitor_moved" callback frequency may change in the future.




SVN revision: 77265
2012-10-01 11:37:41 +00:00
Christopher Michael 271a21df59 E (RandR): Add callbacks in randr widget for monitor_rotated and
monitor_moved. Add del hook for when monitor gets deleted so we can
cleanup callbacks. Fix monitor smart object to build.



SVN revision: 77261
2012-10-01 10:27:39 +00:00
Christopher Michael 28eac48e9c E: Add start of new RandR dialog.
NB: IT IS NOT COMPLETE, DOES NOT APPLY SETTINGS, AND STILL NEEDS LOTS
OF WORK. Don't bother reporting bugs for it just yet, until it is
fully functional. Just adding it to svn in the hopes (hahahaha) that
others may want to jump in and help speed things along.



SVN revision: 77140
2012-09-27 09:22:05 +00:00