Use pushbutton with irremote

Hey guys i want use Irremote with pushbutton in case of losing pilot.
I've tried to use Switch case but it is blocking irremote commands.
Thanks for reply.

Edit:Problem solved topic Closed

#include <IRremote.h>
#define irPin 11
IRrecv irrecv(irPin);
decode_results results;
 
#define onPin 7
#define trybPin 6
#define ldrPin 8
#define on_off 0x65335A55
#define tryb_pwm 0x25D160F5
#define STOP 0x75CAAFB9
#define dhtpin 0xEF3D2F93
#define rozjasnianie 0xDADA4835

#define przyciemnianie 0x4EBAE6FB

#define PWM_PIN 9
#define switchPin 10
#define redled 3
int LDR_pin = A1;
int back_light = 5;;
//int led = 10;
int LDR_out;
int pwm_back_light;
int pwm_led;
int onStatus = 0;
int trybStatus = 0;
int ldrStatus = 0;
//int ledStatus = 0;
int redstatus = 0;
int mode=0;
int PWM_VAL = 100; 
void setup() {
   Serial.begin(9600);
    irrecv.enableIRIn();
   pinMode(LDR_pin, INPUT);
   pinMode(switchPin, INPUT);
  pinMode(back_light, OUTPUT);
 // pinMode(led, OUTPUT);
  pinMode(redled,  OUTPUT);
    pinMode(onPin, OUTPUT);
    pinMode(trybPin, OUTPUT);
    pinMode(ldrPin, OUTPUT);
         onStatus = 0;
            trybStatus = -1;
            ldrStatus = -1;
           // ledStatus = -1;
            redstatus = 0;
            digitalWrite(onPin, onStatus);
            digitalWrite(trybPin, trybStatus);
            digitalWrite(ldrPin, ldrStatus);
            //digitalWrite(led, ledStatus);
           digitalWrite(redled, redstatus);
     irrecv.blink13(true);
 pinMode(PWM_PIN, OUTPUT);
 analogWrite(PWM_PIN,PWM_VAL);
}
 
void loop() { 

  
   if (irrecv.decode(&results)) {
 
      switch (results.value) {
         case  on_off:
            Serial.println("srodek");
            onStatus = -1;
            trybStatus = 0;
            ldrStatus = -1;
            redstatus = 0;
           digitalWrite(onPin, onStatus);
           digitalWrite(trybPin, trybStatus);
           digitalWrite(ldrPin, ldrStatus);
           digitalWrite(redled, redstatus);

            delay(250);
            break;
               case tryb_pwm:
 
               
           Serial.println("ee");
            trybStatus = ~trybStatus;
            ldrStatus = ~ldrStatus;
            redstatus = ~redstatus;
            digitalWrite(trybPin, trybStatus);
            digitalWrite(ldrPin, ldrStatus);
           digitalWrite(redled, redstatus);
            
            delay(250);
           
            break;
            //case dhtpin:
 
               
           //Serial.println("ee");
           // ledStatus = ~ledStatus;
           // digitalWrite(led, ledStatus);
          // delay(250);
           
          //  break;
                  case  STOP:
            Serial.println("srodek");
            onStatus = 0;
            trybStatus = -1;
            ldrStatus = -1; 
            redstatus = 0;
            digitalWrite(onPin, onStatus);
            digitalWrite(trybPin, trybStatus);
            digitalWrite(ldrPin, ldrStatus);
           digitalWrite(redled, redstatus);
            delay(250);
            break;
         }
            if (results.value ==  rozjasnianie){
              if (PWM_VAL < 255){
     Serial.println("Vol +");
     PWM_VAL ++;
   }
            }
   else if(results.value == przyciemnianie){
    if (PWM_VAL > 0)
    {
      Serial.println("Vol -");
      PWM_VAL --;
   }
   }
   //Dumping all codes!
   Serial.println(PWM_VAL);
   Serial.println(onStatus);
//Serial.println(results.value);
   analogWrite(PWM_PIN,PWM_VAL);
          Serial.print("0x");
      Serial.println(results.value, HEX);     
if (digitalRead(switchPin) == LOW){  
   delay(500);                        // delay to debounce switch

   mode++;
    }
   if(mode > 2){
     mode = 1;
   }
   switch (mode)
   {
    case 1:
            Serial.println("srodek");
            onStatus = -1;
            trybStatus = -1;
            ldrStatus = 0;
            redstatus = 0;
           digitalWrite(onPin, onStatus);
           digitalWrite(trybPin, trybStatus);
           digitalWrite(ldrPin, ldrStatus);
           digitalWrite(redled, redstatus);

            delay(250);
            break;

            case 2:
                        Serial.println("srodek");
            onStatus = 0;
            trybStatus = -1;
            ldrStatus = -1; 
            redstatus = 0;
            digitalWrite(onPin, onStatus);
            digitalWrite(trybPin, trybStatus);
            digitalWrite(ldrPin, ldrStatus);
           digitalWrite(redled, redstatus);
            delay(250);
            break;
   }
    
  //  loop();
   irrecv.resume();
   }
  
   
  ldrbacklight(); 

 
} void ldrbacklight()
{
 LDR_out = analogRead(LDR_pin);
  pwm_led = map(LDR_out, 20, 1023, 0, 230);
  pwm_back_light = 255 - (pwm_led);
  pwm_back_light = constrain(pwm_back_light, 0, 255);
  Serial.println("Podswietlenie");
  Serial.println(pwm_back_light);
  analogWrite(back_light, pwm_back_light);
  //analogWrite(led, pwm_back_light);
  delay(2); 
}

Moderator edit: code inlined

IRrelay2.ino (4.82 KB)

    switch (results.value)
    {
      case  on_off:
        Serial.println("srodek");
        onStatus = -1;
etc, etc

Then after the switch/case

    if (results.value ==  rozjasnianie)
    {
      if (PWM_VAL < 255)
      {
etc, etc

Why have you got some of the tests of results.value in the switch/case and others outside ?

I have this for debugging purposes. Generally i use this code without pushbutton modification to control my clock project on Attiny.