Dark theme

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
12 messages Options
Reply | Threaded
Open this post in threaded view
|

Dark theme

Karl Ramberg
Hi,
Has anybody made a dark theme for Squeak with dark window background etc. 

My eyes are becoming much more sensitive to the bright white background, so a dark theme would be nice to switch to :-)

Best,
Karl


Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

Chris Muller-3
Thank you!  I hear you, I can hardly tolerate this black-on-white at night anymore, obliterates contrast in a room with lower light (which is how I prefer to work late at night).

Back for Squeak 3.8, I made the "inverteBright" package, its on SqueakMap, but I have not tested it in 5.0.  It is basically a bunch of hacks IIRC...

On Sun, Jan 3, 2016 at 10:22 AM, karl ramberg <[hidden email]> wrote:
Hi,
Has anybody made a dark theme for Squeak with dark window background etc. 

My eyes are becoming much more sensitive to the bright white background, so a dark theme would be nice to switch to :-)

Best,
Karl






Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

marcel.taeumel
There is no need to change anything in Squeak for that. There is software like f.lux [1] that adapts color temperature according to the daylight. :)

Alternatively: Have you tried: "Color black become: Color white"?

Best,
Marcel

[1] https://justgetflux.com/
Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

Levente Uzonyi
On Sun, 3 Jan 2016, marcel.taeumel wrote:

> There is no need to change anything in Squeak for that. There is software
> like f.lux [1] that adapts color temperature according to the daylight. :)

It quickly becomes annoying seeing everything in red late in the evening.

Levente

>
> Alternatively: Have you tried: "Color black become: Color white"?
>
> Best,
> Marcel
>
> [1] https://justgetflux.com/
>
>
>
> --
> View this message in context: http://forum.world.st/Dark-theme-tp4869082p4869098.html
> Sent from the Squeak - Dev mailing list archive at Nabble.com.
>
>

Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

kilon.alios
yeah i tried that app too, very annoying and i love dark themes.

On Sun, Jan 3, 2016 at 8:53 PM Levente Uzonyi <[hidden email]> wrote:
On Sun, 3 Jan 2016, marcel.taeumel wrote:

> There is no need to change anything in Squeak for that. There is software
> like f.lux [1] that adapts color temperature according to the daylight. :)

It quickly becomes annoying seeing everything in red late in the evening.

Levente

>
> Alternatively: Have you tried: "Color black become: Color white"?
>
> Best,
> Marcel
>
> [1] https://justgetflux.com/
>
>
>
> --
> View this message in context: http://forum.world.st/Dark-theme-tp4869082p4869098.html
> Sent from the Squeak - Dev mailing list archive at Nabble.com.
>
>



Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

Chris Muller-3
In reply to this post by marcel.taeumel
Squeak needs working Themes to serve a variety of use-cases, not just
a Dark theme.

I think we should move Preferences state to the instance-side, and add
a #preferences accessor to PasteUpMorph and then change all the code
to look up all preferences and colors through "self world".  Let each
PasteUpMorph have its own preferences..

And implementing a suitable Preferences>>#veryDeepInner: for deepCopy
support should be trivial..

On Sun, Jan 3, 2016 at 11:50 AM, marcel.taeumel <[hidden email]> wrote:

> There is no need to change anything in Squeak for that. There is software
> like f.lux [1] that adapts color temperature according to the daylight. :)
>
> Alternatively: Have you tried: "Color black become: Color white"?
>
> Best,
> Marcel
>
> [1] https://justgetflux.com/
>
>
>
> --
> View this message in context: http://forum.world.st/Dark-theme-tp4869082p4869098.html
> Sent from the Squeak - Dev mailing list archive at Nabble.com.
>

Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

Chris Muller-3
In reply to this post by marcel.taeumel
Squeak needs working Themes to serve a variety of use-cases, not just
a Dark theme.  For example, a Presentation theme with cranked-up font
sizes.

I think we should move Preferences state to the instance-side, and let
each PasteUpMorph have its own Preferences.

On Sun, Jan 3, 2016 at 11:50 AM, marcel.taeumel <[hidden email]> wrote:

> There is no need to change anything in Squeak for that. There is software
> like f.lux [1] that adapts color temperature according to the daylight. :)
>
> Alternatively: Have you tried: "Color black become: Color white"?
>
> Best,
> Marcel
>
> [1] https://justgetflux.com/
>
>
>
> --
> View this message in context: http://forum.world.st/Dark-theme-tp4869082p4869098.html
> Sent from the Squeak - Dev mailing list archive at Nabble.com.
>

Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

David T. Lewis
In reply to this post by Chris Muller-3
On Sun, Jan 03, 2016 at 01:50:12PM -0600, Chris Muller wrote:
> Squeak needs working Themes to serve a variety of use-cases, not just
> a Dark theme.
>
> I think we should move Preferences state to the instance-side, and add
> a #preferences accessor to PasteUpMorph and then change all the code
> to look up all preferences and colors through "self world".  Let each
> PasteUpMorph have its own preferences..

Good idea, but it would be best if you can associate the preference with
either "Project current" or "Project current uiManager", not with the
world.  That will keep things tidy on the MVC side (where Project current
world is a ControlManager).

Dave


>
> And implementing a suitable Preferences>>#veryDeepInner: for deepCopy
> support should be trivial..
>
> On Sun, Jan 3, 2016 at 11:50 AM, marcel.taeumel <[hidden email]> wrote:
> > There is no need to change anything in Squeak for that. There is software
> > like f.lux [1] that adapts color temperature according to the daylight. :)
> >
> > Alternatively: Have you tried: "Color black become: Color white"?
> >
> > Best,
> > Marcel
> >
> > [1] https://justgetflux.com/
> >
> >
> >
> > --
> > View this message in context: http://forum.world.st/Dark-theme-tp4869082p4869098.html
> > Sent from the Squeak - Dev mailing list archive at Nabble.com.
> >

Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

Chris Muller-3
On Sun, Jan 3, 2016 at 3:42 PM, David T. Lewis <[hidden email]> wrote:

> On Sun, Jan 03, 2016 at 01:50:12PM -0600, Chris Muller wrote:
>> Squeak needs working Themes to serve a variety of use-cases, not just
>> a Dark theme.
>>
>> I think we should move Preferences state to the instance-side, and add
>> a #preferences accessor to PasteUpMorph and then change all the code
>> to look up all preferences and colors through "self world".  Let each
>> PasteUpMorph have its own preferences..
>
> Good idea, but it would be best if you can associate the preference with
> either "Project current" or "Project current uiManager", not with the
> world.  That will keep things tidy on the MVC side (where Project current
> world is a ControlManager).

Fair enough.  Project current, not its uiManager.

Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

marcel.taeumel
In reply to this post by Chris Muller-3
Changing the preferences to world level might improve switching themes but not implementing them. :-) This comes later. First, we should watch out for magic/hard-coded numbers/values and re-direct them through preferences (with caching as appropriate like ScrollPanes do.)

Best,
Marcel
Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

marcel.taeumel
Then, I think, themes affect mainly fonts and colors and other preference-like things. I don't think we need to prepare for fundamentally different #drawOn: methods/implementations/behavior in various morphs. Back then, in my opinion, "Poly Morph" overdid it somehow. Programming the GUI for tools got more challenging than it had to be.

Besides creating morphs according to the current preferences, we should think about how to update existing instances. For colors, there is SystemWindow class >> refreshAllWindows and TheWorldMainDockingBar class >> #updateInstances. There is also ScrollBar class >> #refreshAllScrollBars. But this is rather specific and not reusable without carefully copy-and-paste. They make use of #allSubInstances -- is this the best way of doing it?

Coming back to the original problem in this thread: Yes, we should add a preference to specify the background color in lists, trees, and text fields. Should be easy. :)

Best,
Marcel
Reply | Threaded
Open this post in threaded view
|

Re: Dark theme

Karl Ramberg


On Mon, Jan 4, 2016 at 9:26 AM, marcel.taeumel <[hidden email]> wrote:
Then, I think, themes affect mainly fonts and colors and other
preference-like things. I don't think we need to prepare for fundamentally
different #drawOn: methods/implementations/behavior in various morphs. Back
then, in my opinion, "Poly Morph" overdid it somehow. Programming the GUI
for tools got more challenging than it had to be.

Besides creating morphs according to the current preferences, we should
think about how to update existing instances. For colors, there is
SystemWindow class >> refreshAllWindows and TheWorldMainDockingBar class >>
#updateInstances. There is also ScrollBar class >> #refreshAllScrollBars.
But this is rather specific and not reusable without carefully
copy-and-paste. They make use of #allSubInstances -- is this the best way of
doing it?

Coming back to the original problem in this thread: Yes, we should add a
preference to specify the background color in lists, trees, and text fields.
Should be easy. :)

Sounds promising ;-)

Best,
Karl 

Best,
Marcel



--
View this message in context: http://forum.world.st/Dark-theme-tp4869082p4869133.html
Sent from the Squeak - Dev mailing list archive at Nabble.com.