Commit Graph

65 Commits

Author SHA1 Message Date
Carsten Haitzler e6861cae44 shot - make toolset scrollable to allow smaller window 2021-01-10 16:50:03 +00:00
Carsten Haitzler b08ad06ede xsettings - if we set font from e use same size not 0.75 times size
xft.dpi + xsettings dpi should be dealing with this these days
2021-01-08 22:31:11 +00:00
Carsten Haitzler 4b87781bae scaling - remove custon x application dpi and move to central scaling
now have a base dpi (75) which is multiplied by the scale factor and
then set in both xft.dpi and xsettings. also a checkbox to turn
setting of this on or off so e can be told to not touch these at all.
2020-11-29 18:52:17 +00:00
Carsten Haitzler d9cffad0f8 whitespace formatting cleanup 2020-11-29 13:30:24 +00:00
Carsten Haitzler be1db92dbb e scaling - set xsettings scalign from core e scale if x xset dpi off
if e' x applications setitnghs (xsettingvs) is off - then just
calculate an xsettings dpi val from core scale. also use randr info
for dpi if possible instead of "core x" and "core wl". wprkds around
broken core dpi in x.
2020-11-22 13:53:29 +00:00
Alastair Poole 2c70e9648d xsettings: unbreak config and use standard naming.
Reviewed-by: Christopher Michael <devilhorns@comcast.net>
Differential Revision: https://phab.enlightenment.org/D12150
2020-09-18 10:59:55 -04:00
Alastair Poole 91d98c0183 xsettings: keep the logic "simple".
No need for hook. Wrong use of the API. The widget already does
this when checking various objects.

Set DPI to a default if X application settings enabled else use
the custom DPI.

GTK applications only respect the changes
if they are started when the xsettings is brought up. This is
confusing. Sorry for the noise :(
2020-09-17 19:29:36 +01:00
Alastair Poole 1183f221cc xsettings: restore DPI on X settings disable. 2020-09-17 17:45:45 +01:00
Alastair Poole 9f33fbf62e xsettings: Allow for custom DPI setting.
Until a wayland/X11 solution allow setting a custom DPI in
Settings -> Application Theme -> X Application Settings
2020-09-17 16:50:24 +01:00
Carsten Haitzler e8f5794b81 e xsettings - do not use long for 32bit types... it's WRONG
long varies by architecture... whoever decided C32 should be long...
was totally wrong. it varies between 32 and 64bit (on unixen).

@fix
2020-06-17 13:21:13 +01:00
Carsten Haitzler 71b5cb3e7c xsettings - always use decimal for format for float prints
snprintf will use locale and maybe print 10,24 instead of 10.24 ...
thus use a custom routine to specially do this always by hand without
mssing with locale.

@fix
2020-06-05 11:21:20 +01:00
Elyes HAOUAS cd5f79c814 tree-wide: get rid of trailing whitespace (part 4)
Remove trailing whitespaces

Reviewed-by: Stefan Schmidt <stefan@datenfreihafen.org>
Differential Revision: https://phab.enlightenment.org/D11823
2020-05-14 13:49:15 +02:00
Alastair Poole 38ee777a1c e_xsettings: Set appropriate font sizes.
This sets GTK+/Qt font sizes appropriately by converting
from pixels to point.
2019-08-27 23:09:51 +01:00
Carsten Haitzler c11da6402e warn - make buffer bigger to avoid trunc warn 2019-01-12 01:51:43 +00:00
Al Poole d70733bbdc Byte order macro. Be consistent and get rid of clang warnings. 2018-03-01 18:35:16 +00:00
Mike Blumenkrantz 815391126e further protect against crashes when xwayland crashes 2018-01-22 16:51:40 -05:00
Mike Blumenkrantz 99db9e2557 more E_BITFIELD conversions 2017-11-08 09:22:24 -05:00
Carsten Haitzler 8da6aa4142 xsettings - fix warning for buffer that could be a bit small
warnings of buffer being a little small in theory. fix.
2017-08-21 12:16:27 +09:00
Mike Blumenkrantz ac91f3b2c5 clamp xsettings font size to 12 when size is 0
font class config does not require the user to select a size, so do
extra clamping here when a size isn't set

fix T3093
2017-08-18 15:52:50 -04:00
Al Poole ac5036af0f Fix macro namings in relation to endianness.
Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D4714
2017-03-13 12:32:23 -04:00
Carsten Haitzler 8c70210ee6 e xsettings - fix warnings about unaligned ptr access
this moves access to byte by byte memcpy's to avoid potential
unaligned access.
2017-02-12 16:25:35 +09:00
Derek Foreman 73aecd73ab Replace all timer_add with timer_loop_add
So yeah, I've literally used sed to replace every occurrence of
ecore_time_add() with ecore_timer_loop_add() because I'm reasonably
confident that no part of E has a legitimate need for timer based on the
exact current time.

It would be really nice if I'm not wrong. :)

The reason for this is the incredible spew of clock_gettime() calls I'm
seeing on an ARM system (that should have a vdso for gettime, but...)
This can amount to thousands of system calls per second.

 #YOLO
2017-02-03 15:52:28 -06:00
Mike Blumenkrantz f4023fc6c1 do not set XCURSOR_PATH variable if re-setting existing value 2016-02-29 08:12:40 -05:00
Chris Michael e856f7acbb enlightenment: #if 0 out an unused variable
NB: The function which actually uses this variable is also #if 0'd out

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-10-14 10:30:33 -04:00
Mike Blumenkrantz 6faa894a59 block xsettings config update if xsettings has not been initialized
fix T2610
2015-07-28 12:34:05 -04:00
Chris Michael 0a94e8ba71 enlightenment: Make E build again with EFL from git
sed -i 's/EAPI/E_API/g'

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-05-07 15:13:10 -04:00
Carsten Haitzler c746beb202 e - xsettings - calloc buffer since we leave 3 of 4 bytes unset
the first 4 bytes is a msb/lsb thing for xsetttings - we ignore 3 of
the 4 bytes. thus we should just calloc the whole buffer to ensure its 0
2015-04-21 08:52:19 +09:00
Mike Blumenkrantz 58447e9508 completely remove E_Manager
the final step in flattening all the canvas/screen apis
2015-03-19 16:53:32 -04:00
Mike Blumenkrantz 471dcb24cb __UNUSED__ -> EINA_UNUSED
this has been bugging me forever. __UNUSED__ is no longer a valid macro here.
2015-03-18 18:09:09 -04:00
Mike Blumenkrantz 922af2c52f remove e_comp_list(), deprecate all related functions for pending removal
there is only one E_Comp which can now be accessed by the e_comp global.

if you're editing a file with some uses of these deprecated functions, replace their usages with appropriate references to this variable

pass -Wno-deprecated-declarations to ignore these warnings during build
2015-01-05 15:39:15 -05:00
Chris Michael c308904e9b fix formatting
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2014-08-26 10:10:36 -04:00
Yomi 7b34569ca8 Fix misspellings on line 21 and line 24.
Summary: Fix what I believe to be misspellings of 'Manager' on lines 21 and 24.

Test Plan: Build Enlightenement...

Reviewers: raster, zmike

CC: cedric

Differential Revision: https://phab.enlightenment.org/D1003
2014-06-11 20:19:14 -04:00
Mike Blumenkrantz 982d843d53 gtk rcfiles atom should only be triggered on first startup 2014-05-09 22:43:51 -04:00
Mike Blumenkrantz 85396eb28d remove unused static variable 2014-05-09 22:34:08 -04:00
Mike Blumenkrantz 317cc426b9 don't do xsettings atom shutdown during shutdown
this forces an xsync which just wastes time for no reason
2014-05-09 17:16:06 -04:00
Mike Blumenkrantz 86656e4df9 compositor rewrite / charlie-foxtrot situation
huge fustercluck commit because there wasn't really a way to separate out the changes. better to just rip it all out at once.

* compositor and window management completely rewritten. this was the goal for E19, but it pretty much required everything existing to be scrapped since it wasn't optimized, streamlined, or sensible. now instead of having the compositor strapped to the window manager like an outboard motor, it's housed more like an automobile engine.

** various comp structs have been merged into other places (eg. E_Comp_Zone is now just part of E_Zone where applicable), leading to a large deduplication of attributes

** awful E_Comp_Win is totally dead, having been replaced with e_comp_object smart objects which work just like normal canvas objects

** protocol-specific window management and compositor functionality is now kept exclusively in backend files

** e_pixmap api provides generic client finding and rendering api

** screen/xinerama screens are now provided directly by compositor on startup and re-set on change

** e_comp_render_update finally replaced with eina_tiler

** wayland compositor no longer creates X windows

** compositor e_layout removed entirely

* e_container is gone. this was made unnecessary in E18, but I kept it to avoid having too much code churn in one release. its sole purpose was to catch some events and handle window stacking, both of which are now just done by the compositor infra

* e_manager is just for screensaver and keybind stuff now, possibly remove later?

* e_border is gone along with a lot of its api. e_client has replaced it, and e_client has been rewritten completely; some parts may be similar, but the design now relies upon having a functional compositor

** window configuration/focus functions are all removed. all windows are now managed solely with evas_object_X functions on the "frame" member of a client, just as any other canvas object can be managed.

*** do NOT set interceptors on a client's comp_object. seriously.

* startup order rewritten: compositor now starts much earlier, other things just use attrs and members of the compositor

* ecore_x_pointer_xy_get usage replaced with ecore_evas_pointer_xy_get

* e_popup is totally gone, existing usage replaced by e_comp_object_util_add where applicable, otherwise just placed normally on the canvas

* deskmirror is (more) broken for now

* illume is totally fucked

* Ecore_X_Window replaced with Ecore_Window in most cases

* edge binding XWindows replaced with regular canvas objects

* some E_Win functionality has changed such that delete callbacks are now correctly called in ALL cases. various dialogs have been updated to not crash as a result

comp files and descriptions:

e_comp.c - overall compositor functions, rendering/update loop, shape cutting

e_comp_x.c - X window management and compositor functionality

e_comp_wl.c - Wayland surface management and compositor functionality

e_comp_canvas.c - general compositor canvas functions and utilities

e_comp_object.c - E_Client->frame member for managing clients as Evas_Objects, utility functions for adding objects to the compositor rendering systems

additional authors: ivan.briano@intel.com

feature: new compositor

removal: e_border, e_container, e_popup
2014-01-14 20:22:02 -05:00
Carsten Haitzler 4b4a51d189 elm theme use - use elementary only for themes and remove e's own theme
now e only uses elementary's theme. this is to stop the bitrot and
forking of e's theme vs the unified elm theme that has everything for
e in it already. this obviously makes elm a requirement of e18 on, and
this also notes that emotion is always in efl these days, so its no
longer an option, and ecore-imf is no longer used as edje does the
entires now itself. in future it'll all be elm.

this is a major unification point for themes for elm and e. this will
need some testing, but everything seems to work day-to-day, but theme
selector is untested.

this also removes the theme selector for splash as that is now simply
unified with the same theme as everything else.
2013-10-31 23:36:22 +09:00
Mike Blumenkrantz 6aad12eda8 don't apply xsettings if no settings exist
* fixes buffer overflow
2013-04-18 10:39:58 +01:00
Mike Blumenkrantz 9e8e755cdf formatting: all at once
SVN revision: 82625
2013-01-11 10:34:29 +00:00
Carsten Haitzler 625cafc28c fix xsettings to notneed x headers directly... much better! :)
SVN revision: 82058
2013-01-03 11:21:24 +00:00
Mike Blumenkrantz de5a59c469 correctly update gtk icons/themes when changed, also don't double update on icon events
ticket #2063


SVN revision: 81541
2012-12-21 12:03:11 +00:00
Sebastian Dransfeld 164151842f e: always apply xsettings
And use _e_xsettings_update instead of looping managers

SVN revision: 78941
2012-11-06 15:21:11 +00:00
Sebastian Dransfeld 82f094feaa e: Apply styles to gtk application font
SVN revision: 77200
2012-09-28 12:04:34 +00:00
Sebastian Dransfeld 7c4fa48ab6 e: fix missing xcursor in e17
I discovered that at least for 1 week xcursor is not shown if it was
installed in system directory (/usr/share/icons), so i guess i will fix
a fix.

Fixes #1556

Patch by Sergei Kabanov

SVN revision: 77153
2012-09-27 13:02:18 +00:00
Mike Blumenkrantz 295798af41 e's xsettings now prepends ~/.icons to XCURSOR_PATH if this directory exists to (hopefully) prevent ticket #1103 from resurfacing
SVN revision: 76844
2012-09-19 06:58:50 +00:00
Mike McCormack 840e05dd4a e: Fix shadow warning
Signed-off-by: Mike McCormack <mikem@ring3k.org>

SVN revision: 75710
2012-08-26 12:01:00 +00:00
Carsten Haitzler 9a35b4779b unfortuntely.. i have to revert the revert to my revert... as
xsettings is still broken immediately after login and stays broken
until u restart e. :(



SVN revision: 74772
2012-08-02 03:36:51 +00:00
Mike Blumenkrantz 68b11c3a2c fix manual xsettings selection
SVN revision: 74636
2012-07-31 10:22:35 +00:00
Mike Blumenkrantz 428b9a138a revert xsettings reverts
SVN revision: 74635
2012-07-31 10:22:13 +00:00
Carsten Haitzler 5e8595269b actually rever allt he way back to before the stringshare commit as it
only worked then on restart not on login. xsettings works again.



SVN revision: 74627
2012-07-31 09:11:04 +00:00