Commit Graph

108 Commits

Author SHA1 Message Date
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
Christopher Michael d603306b70 Add code to limit resize to the maximum resolution.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81089
2012-12-17 09:19:52 +00:00
Christopher Michael 45c77f4f64 Update comment.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81088
2012-12-17 09:19:49 +00:00
Christopher Michael c1aab4d679 Add code to get the 'current' refresh rate on monitor setup.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81087
2012-12-17 09:19:46 +00:00
Christopher Michael e0fd5aee63 Fix resize start and stop signals to pass the object also.
Add preliminary function for handling resize.
Add functions to set resizing flag on start & stop.

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

SVN revision: 81086
2012-12-17 09:19:44 +00:00
Christopher Michael 395b19b28e Add basic infrastructure for resize start/stop signals.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81085
2012-12-17 09:19:41 +00:00
Christopher Michael 33bc78ad1f Fix some comments.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81084
2012-12-17 09:19:38 +00:00
Christopher Michael fa99b6d3f0 Remove debug printf.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81083
2012-12-17 09:19:36 +00:00
Christopher Michael e0ebab8576 Implement filling the refresh list.
Fix a todo for common modes.

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

SVN revision: 81082
2012-12-17 09:19:33 +00:00
Christopher Michael 5e48a93502 Add a field in the monitor structure to store the canvas.
Add refresh rate object to monitor structure
Add refresh rate field to store the current rate.
Add start of refresh_rate fill function.

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

SVN revision: 81081
2012-12-17 09:19:30 +00:00
Christopher Michael 5c76922851 Remove 'hack' to setting rotation cursor.
Implement e_pointer way of setting it.

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

SVN revision: 81080
2012-12-17 09:19:27 +00:00
Christopher Michael 13eb1a0321 Add flags in new monitor structure for enabled, moving, resizing, rotating.
Add field(s) in the smart data structure to store the layout widget reference along with layout geometry and size.
Add code to set the monitor name.
Add code to set the resolution name.
Add code to set enabled/disabled state.
Add code to handle when the layout widget gets moved so we can update the recorded geometry.
Add livethumb background preview.
Add edje signal callbacks for resize, rotate, and indicator.
On monitor deletion, remove the bg_update_handler, and free the list of modes.
Add code to handle manual user moving of monitor.

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

SVN revision: 81077
2012-12-17 09:19:19 +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
Carsten Haitzler d77fca2234 also all the pointer push/pops are going to be bad in that they mess
with the manager pointer... that is bad - at most mess with your own
win pointer.. push and pop that. fix... and use plus pointer for power
led button so it doesnt look like the hand ptr for dragging. :)



SVN revision: 81019
2012-12-15 13:30:13 +00:00
Carsten Haitzler 1f7c977b79 ummm randr.. why do pointer differently for rotate.. when e_poitner
already does it? fix - use e_pointer.



SVN revision: 81018
2012-12-15 13:18:10 +00:00
Mike Blumenkrantz d9792a7777 improve randr rotate snapping calculations
SVN revision: 79815
2012-11-29 06:59:29 +00:00
Christopher Michael e5a6beaa9e Also show refresh rate in the popup menu.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 79450
2012-11-19 13:19:06 +00:00
Mike Blumenkrantz e5903f4740 add support for and use eina_list_last_data_get
SVN revision: 79144
2012-11-12 10:05:09 +00:00
Christopher Michael 461c733145 E (RandR): Use a "normal" resolution (640x480) not (640x640).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78187
2012-10-18 12:59:44 +00:00
Carsten Haitzler c824b1a1e1 fix segv's in randr dialog. :)
SVN revision: 77943
2012-10-13 03:18:58 +00:00
Christopher Michael 44a95f2797 E (RandR): Add function to 'reset' a monitor's changes. This is used
after any user modifications have been applied so that we an reset the
'original' values to the 'currently applied' values. This helps to
keep the Apply button in sync.

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

SVN revision: 77890
2012-10-11 14:29:17 +00:00
Christopher Michael 79339fb431 E (RandR): Remove dead code lines.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77887
2012-10-11 14:29:07 +00:00
Christopher Michael 1756c3de92 E (RandR): Remove dead comment.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77886
2012-10-11 14:29:04 +00:00
Christopher Michael e0bb649b07 E (RandR): Reduce potential variable usage in geometry_get function.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77885
2012-10-11 14:29:01 +00:00
Christopher Michael 931a9f4d05 E (RandR): Remove dead code line.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77884
2012-10-11 14:28:58 +00:00
Christopher Michael 24d5040564 E (RandR): If we have a crtc when getting monitor geometry, then use
that for width & height.

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

SVN revision: 77883
2012-10-11 14:28:51 +00:00
Christopher Michael 62644089e9 E (RandR): Setup defaults before we assign output & crtc.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77882
2012-10-11 13:51:39 +00:00