Adium

Changeset 22962

Show
Ignore:
Timestamp:
03/20/2008 09:08:00 PM (8 months ago)
Author:
evands
Message:

Patch from hortont424 which fixes a very longstanding problem which forced us to limit minimum transparency of the contact list to 5% opaque. Turns out we can tell windows not to ignore mouse events! I modified the patch slightly to maintain the old behavior for the "Bubbles (To Fit)" window style.

Put the minimum opacity at 0% where it belongs. Hooray!

Fixes #5104.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/Source/AIAppearancePreferences.m

    r22813 r22962  
    8888 */ 
    8989- (void)viewDidLoad 
    90 {        
     90
     91        [slider_windowOpacity setMinValue:0.0]; 
     92        [slider_windowOpacity setMaxValue:100.0]; 
     93 
    9194        //Other list options 
    9295        [popUp_windowStyle setMenu:[self _windowStyleMenu]]; 
  • trunk/Source/AIListWindowController.m

    r22859 r22962  
    378378                float opacity = [[prefDict objectForKey:KEY_LIST_LAYOUT_WINDOW_OPACITY] floatValue];             
    379379                [contactListController setBackgroundOpacity:opacity]; 
    380                  
     380 
     381                /* Don't allow clickthrough of a transparent list unless using fitted pillows; this allows full transparency 
     382                 * but proper responsiveness. Fitted pillows have lots of window space which clearly shouldn't respond to clicks. 
     383                 */ 
     384                BOOL allowsTransparentClickthrough = ([[prefDict objectForKey:KEY_LIST_LAYOUT_WINDOW_STYLE] intValue] == AIContactListWindowStyleContactBubbles_Fitted); 
     385                [[self window] setIgnoresMouseEvents:allowsTransparentClickthrough]; 
     386 
    381387                if (!firstTime) { 
    382388                        shouldRevealWindowAndDelaySliding = YES; 
     
    411417                //Both layout and theme 
    412418                [contactListController updateLayoutFromPrefDict:layoutDict andThemeFromPrefDict:themeDict]; 
    413                  
     419 
    414420                if (!firstTime) { 
    415421                        shouldRevealWindowAndDelaySliding = YES;