Commit Graph

135 Commits

Author SHA1 Message Date
Christopher Michael 9354ef67ae Set aspect width & height on the same line
(pedantic commit just to remove 2 extra lines).

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

SVN revision: 84161
2013-02-19 10:57:18 +00:00
Christopher Michael 457c302e92 Modifiy crtc_set function to also take the current crtc coordinates
(this saves us a round-trip function call to ecore_x_randr as we
already have the coordinates from the randr widget).

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

SVN revision: 84159
2013-02-19 10:57:12 +00:00
Christopher Michael 54a0fa16ae When we set the crtc of the monitor, we can update position and
resolution text.

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

SVN revision: 84158
2013-02-19 10:57:09 +00:00
Christopher Michael 58b68ab98b Add private functions for setting monitor position and resolution text.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84157
2013-02-19 10:57:06 +00:00
Christopher Michael 597d95bdb6 Add code to set the monitor name.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84156
2013-02-19 10:57:04 +00:00
Christopher Michael 8d47671e6e Add code to handle setting of background preview on initial show.
Add code to handle setting of background preview when user changes the
bg.

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

SVN revision: 84153
2013-02-19 10:56:54 +00:00
Christopher Michael 055ccc581e Remove virtual_size_set code (turns out, it's not needed).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84151
2013-02-19 10:56:48 +00:00
Christopher Michael 85ff779ed4 Add min & max mode sizes to monitor structure.
Add Frame & Stand to monitor structure.
Add code to create/show/move/resize/hide the frame & stand.
Change the code to use ecore_x_randr functions so that when running in
Xephyr we get monitors that make sense.
Change output_set and crtc_set functions to take the Ecore_X_Randr
types.
Set an aspect ratio on the frame (so it maintains during resize)
Add function for telling monitor what the virtual size is.
Add function for telling monitor what grid object it belongs to.

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

SVN revision: 84147
2013-02-19 10:56:38 +00:00
Christopher Michael 9f6b69c053 Add test rectangle to monitor
Add LOGFN to functions.

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

SVN revision: 84141
2013-02-19 10:56:20 +00:00
Christopher Michael 31b98fecbf Add a list of modes to smart_data structure.
When we set the output, fill in the modes list
Add code to sort modes list.

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

SVN revision: 84133
2013-02-19 10:55:56 +00:00
Christopher Michael 148cdc90d8 Add geometry to smart_data struct.
Check geometry changes in smart_move and smart_resize.

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

SVN revision: 84132
2013-02-19 10:55:54 +00:00
Christopher Michael 7246631647 Add crtc and output configs to smart_data structure.
Add functions to set crtc and output configs.

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

SVN revision: 84130
2013-02-19 10:55:45 +00:00
Christopher Michael 5216fb097a Add initial monitor code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84125
2013-02-19 10:55:30 +00:00
Christopher Michael 4dfda15a8d Initial rewrite of the monitor object.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84117
2013-02-19 10:55:07 +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 f117b3de1d Add function for setting monitor position text.
Fix some comments.
When the monitor object gets moved, update the position text.

NB: Hopefully this helps a little for people having monitor "black
out" issues after moving things around. At least now you can See what
the position will be.

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

SVN revision: 82887
2013-01-16 13:33:27 +00:00
Christopher Michael 37908f9b73 When searching for the next resolution to snap to, do Not skip
refresh_rate checks (allows resize events which keep the current rate).

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

SVN revision: 82884
2013-01-16 11:56:44 +00:00
Christopher Michael 01eb2c4cc0 Various fixes for some resizing issues as reported by Thanatermesis.
- Don't bother trapping mouse movements outside of the monitor.
 - Simplier test for resizing above/below max/min resolution.

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

SVN revision: 82883
2013-01-16 11:56:36 +00:00
Christopher Michael 44b62de0b6 Add monitor function to return geometry of the actual frame object.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82866
2013-01-16 08:41:34 +00:00
Christopher Michael f518182cf8 Use output name first instead of monitor name. Fall back to monitor
name if output has no name.

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

SVN revision: 82863
2013-01-16 08:07:00 +00:00
Christopher Michael 272907949e Pass the new orientation to map remove so we can resize the frame
properly.
When we start a rotate event, record the starting rotation.
When we stop rotating, mung in the starting rotation value.
Just fetch geometry once when we stop rotating.
Update the current orientation After we are done removing the map (on
rotate stop).

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

SVN revision: 82862
2013-01-16 08:06:57 +00:00
Christopher Michael 1cca680d13 When getting the amount of rotation, use the frame geometry (as that
is where the rotation event actually happens), instead of the geometry
of the whole monitor object.

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

SVN revision: 82861
2013-01-16 08:06:54 +00:00
Christopher Michael 2c034a27b9 Add function to remove an applied map (for making bg and text look
proper after rotation).

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

SVN revision: 82860
2013-01-16 08:06:40 +00:00
Christopher Michael 721d4385a9 Some fixes for Intel cards:
Do not set enabled until after a current mode is set.
Update original size after we set current mode.
Add an original cloned value we can track.
Add code to apply just cloning changes.

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

SVN revision: 82329
2013-01-07 07:39:54 +00:00
Christopher Michael 4c76f30a57 Fix compile: Use the proper smart data variable.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82328
2013-01-07 07:39:52 +00:00
Christopher Michael 4f572243c1 When we clone/un-clone, also set a Changed on the position so that
Apply will handle new geometry for the monitor.

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

SVN revision: 82327
2013-01-07 07:39:49 +00:00
Christopher Michael 12a420c9ab Add support for marking dialog changes if the user unclones a monitor
and does nothing else.

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

SVN revision: 82325
2013-01-07 07:39:45 +00:00
Maxime Villard 4a52c46268 From: Maxime Villard <rustyBSD@gmx.fr>
Subject: [E-devel] [e][PATCH] Optimizations v2
Date: Fri, 21 Dec 2012 22:17:32 +0100

Hi,
same patch as before: removed useless nullchecks and
switched some free()'s to E_FREE().



SVN revision: 81592
2012-12-21 21:31:13 +00:00
Mike Blumenkrantz 27896bfae3 stringshare leak--
SVN revision: 81531
2012-12-21 10:15:41 +00:00
Christopher Michael 69cb1822e1 Fix monitor apply settings.
NB: According to a conversation with T_UNIX, we actually do use the
ecore_x randr functions to apply the config.

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

SVN revision: 81377
2012-12-19 15:39:51 +00:00
Christopher Michael 75981aa321 Set struct field for Enabled/Disabled Before we try to find possible
crtc.
If the monitor's crtc does not have a current_mode (because it was
previously disabled), then grab the last available mode (typically the
largest) and set the crtc current_mode to that.
Add some debugging for Enable/Disable.
Remove code which was trying to use ecore_x calls to re-enable a
monitor.
Use the randr function for trying to enable an output (if previously
disabled).

NB: Enable/Disable Does work, HOWEVER in my testing I have found that
when you re-enable a monitor, you will need to completely back out of
X and restart it in order for the Monitor to show output again. Unsure
if this is an X bug or something in e_randr or someother weirdness....

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

SVN revision: 81367
2012-12-19 14:21:47 +00:00
Christopher Michael 80539b0c9a Fix smart monitor object to handle disabled monitors more gracefully.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81349
2012-12-19 11:04:28 +00:00
Stefan Schmidt b2663a26fa e/conf_randr: Move radio creation into the block that needs it.
Discussed with devilhorns.

SVN revision: 81339
2012-12-19 09:47:40 +00:00
Christopher Michael 6c3a3d14d3 Check if a monitor supports rotation (via different orientations), and
if not then disable the rotate ability on the frame.

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

SVN revision: 81261
2012-12-18 15:16:39 +00:00
Christopher Michael 4709380a02 If we change size on the monitor, be sure to set the current mode.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81256
2012-12-18 14:44:08 +00:00
Christopher Michael f40b20b7a9 Be sure to set output policy if we are cloned or not.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81254
2012-12-18 14:15:48 +00:00
Christopher Michael 9e2fb834b9 When telling the monitor to apply changes we should check to see what
actually changed and update things accordingly.

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

SVN revision: 81236
2012-12-18 11:13:49 +00:00
Christopher Michael 649446a72e Add safety check for valid zone. If we do not have one, return current
one.

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

SVN revision: 81227
2012-12-18 09:35:19 +00:00
Christopher Michael 373bd3ce00 Add function for a monitor to apply it's changes.
NB: This is needed because apparently the e_randr serialization code
works DIRECTLY on the E_Randr_Info structures (E_Randr_Output_Info,
etc, etc). Sooo, in order to save and restore a randr config, we need
for the monitor to update those structures First before we tell
e_randr to save things else it will save with incorrect values.

NB: This is the START of save/restore configuration work.

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

SVN revision: 81161
2012-12-17 15:46:55 +00:00
Christopher Michael 3ba73d30d8 Add function to return current enabled state.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81139
2012-12-17 13:42:12 +00:00
Christopher Michael 3f84da5d34 If we unclone (from a blank config) than we need to update the current
x/y of the monitor.

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

SVN revision: 81134
2012-12-17 12:55:32 +00:00
Christopher Michael 3c270359ce Delete any cloned monitors when we delete the main one.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81124
2012-12-17 11:35:16 +00:00
Christopher Michael f224102a0b Fix "mini clone" movement when a monitor moves.
Fix "mini clone" movement when a monitor resizes.

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

SVN revision: 81122
2012-12-17 11:30:41 +00:00
Christopher Michael b55027332b Remove some erroneous printfs.
When we are uncloning, don't use crtc geometry but rather use the
monitors visual position.
When we show, we need to re-apply any existing rotation (in case
monitor is uncloned).

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

SVN revision: 81113
2012-12-17 10:21:57 +00:00
Christopher Michael fb6c724151 Add some printfs (commented out).
When we unclone a monitor (on initial startup), if it has not been
manually placed yet, use the crtc geometry for position & size.

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

SVN revision: 81110
2012-12-17 09:21:05 +00:00
Christopher Michael b0d6204b83 Add a clone object (mini to represent this monitor).
Record monitor's current geometry when move starts (so if we unclone
we can restore the position).

Port Raster's mouse pointer changes to new dialog :)

Fix refresh_rate fill function to take the monitor object (needed so
we can raise changed signal).

Add functions for getting the "current" information from the monitor
object (Used during apply).

Fix up swallowing and unswallowing of clones so that they restore
to the original position (before cloning).

Fix up smart move & resize function to not apply map if not visible.

Use a single "map_apply" function (reduce duplicated code).

Hook into radio changed (refresh rate) so we can send the changed
signal.

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

SVN revision: 81102
2012-12-17 09:20:41 +00:00
Christopher Michael 551b576a4b Don't set mouse pointer to "move" if this is a cloned monitor.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81096
2012-12-17 09:20:17 +00:00
Christopher Michael 690fe7a419 Ignore mouse events on cloned monitors.
Ignore resize events on cloned monitors.
Ignore rotate events on cloned monitors.
Don't set the moving flag if this monitor is cloned.

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

SVN revision: 81095
2012-12-17 09:20:13 +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 710b996818 Add code to limit resize not go below minimum resolution.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81090
2012-12-17 09:19:55 +00:00