Browse Source

Misc fixing; Set _NET_WM_PID on internal X11 windows

tags/1.9.4
falkTX 12 years ago
parent
commit
0b297f2e4e
8 changed files with 32 additions and 23 deletions
  1. +6
    -4
      source/Makefile.mk
  2. +2
    -0
      source/backend/plugin/CarlaPluginThread.cpp
  3. +5
    -0
      source/backend/plugin/CarlaPluginUi.cpp
  4. +5
    -5
      source/modules/jackbridge/JackBridge.hpp
  5. +5
    -5
      source/modules/jackbridge/JackBridge2.cpp
  6. +5
    -5
      source/modules/native-plugins/midi-base.hpp
  7. +1
    -1
      source/modules/native-plugins/vex/VexVoice.h
  8. +3
    -3
      source/modules/native-plugins/vex/lookandfeel/MyLookAndFeel.cpp

+ 6
- 4
source/Makefile.mk View File

@@ -87,12 +87,14 @@ endif

ifeq ($(TESTBUILD),true)
BASE_FLAGS += -Werror -Wcast-qual -Wconversion -Wformat -Wformat-security -Wredundant-decls -Wshadow -Wstrict-overflow -fstrict-overflow -Wundef -Wwrite-strings
# ifneq ($(CC),clang)
ifneq ($(CC),clang)
BASE_FLAGS += -Wcast-align -Wunsafe-loop-optimizations
# endif
# -Wsuggest-attribute=noreturn
endif
ifneq ($(MACOS),true)
BASE_FLAGS += -Wlogical-op -Wmissing-declarations -Wsign-conversion
BASE_FLAGS += -Wmissing-declarations -Wsign-conversion
ifneq ($(CC),clang)
BASE_FLAGS += -Wlogical-op
endif
endif
CFLAGS += -Wmissing-declarations -Wmissing-prototypes -Wstrict-prototypes
CXXFLAGS += -Wnon-virtual-dtor -Woverloaded-virtual


+ 2
- 0
source/backend/plugin/CarlaPluginThread.cpp View File

@@ -24,6 +24,7 @@

CARLA_BACKEND_START_NAMESPACE

#ifdef DEBUG
static inline
const char* PluginThreadMode2str(const CarlaPluginThread::Mode mode)
{
@@ -44,6 +45,7 @@ const char* PluginThreadMode2str(const CarlaPluginThread::Mode mode)
carla_stderr("CarlaPluginThread::PluginThreadMode2str(%i) - invalid mode", mode);
return nullptr;
}
#endif

CarlaPluginThread::CarlaPluginThread(CarlaBackend::CarlaEngine* const engine, CarlaBackend::CarlaPlugin* const plugin, const Mode mode)
: CarlaThread("CarlaPluginThread"),


+ 5
- 0
source/backend/plugin/CarlaPluginUi.cpp View File

@@ -19,6 +19,7 @@
#include "CarlaHost.h"

#ifdef HAVE_X11
# include <sys/types.h>
# include <X11/Xatom.h>
# include <X11/Xlib.h>
# include <X11/Xutil.h>
@@ -58,6 +59,10 @@ public:
Atom wmDelete = XInternAtom(fDisplay, "WM_DELETE_WINDOW", True);
XSetWMProtocols(fDisplay, fWindow, &wmDelete, 1);

pid_t pid = getpid();
Atom _nwp = XInternAtom(fDisplay, "_NET_WM_PID", True);
XChangeProperty(fDisplay, fWindow, _nwp, XA_CARDINAL, 32, PropModeReplace, (const uchar*)&pid, 1);

if (parentId != 0)
setTransientWinId(parentId);
}


+ 5
- 5
source/modules/jackbridge/JackBridge.hpp View File

@@ -380,10 +380,10 @@ CARLA_EXPORT bool jackbridge_sem_destroy(void* sem) noexcept;
CARLA_EXPORT bool jackbridge_sem_post(void* sem) noexcept;
CARLA_EXPORT bool jackbridge_sem_timedwait(void* sem, int secs);

CARLA_EXPORT bool jackbridge_shm_is_valid(char* shm);
CARLA_EXPORT void jackbridge_shm_init(char* shm);
CARLA_EXPORT void jackbridge_shm_attach(char* shm, const char* name);
CARLA_EXPORT void jackbridge_shm_close(char* shm);
CARLA_EXPORT void* jackbridge_shm_map(char* shm, size_t size);
CARLA_EXPORT bool jackbridge_shm_is_valid(void* shm);
CARLA_EXPORT void jackbridge_shm_init(void* shm);
CARLA_EXPORT void jackbridge_shm_attach(void* shm, const char* name);
CARLA_EXPORT void jackbridge_shm_close(void* shm);
CARLA_EXPORT void* jackbridge_shm_map(void* shm, size_t size);

#endif // JACKBRIDGE_HPP_INCLUDED

+ 5
- 5
source/modules/jackbridge/JackBridge2.cpp View File

@@ -120,31 +120,31 @@ bool jackbridge_sem_timedwait(void* sem, int secs)
# endif
}

bool jackbridge_shm_is_valid(char* shm)
bool jackbridge_shm_is_valid(void* shm)
{
shm_t* t = (shm_t*)shm;
return carla_is_shm_valid(*t);
}

void jackbridge_shm_init(char* shm)
void jackbridge_shm_init(void* shm)
{
shm_t* t = (shm_t*)shm;
carla_shm_init(*t);
}

void jackbridge_shm_attach(char* shm, const char* name)
void jackbridge_shm_attach(void* shm, const char* name)
{
shm_t* t = (shm_t*)shm;
*t = carla_shm_attach(name);
}

void jackbridge_shm_close(char* shm)
void jackbridge_shm_close(void* shm)
{
shm_t* t = (shm_t*)shm;
carla_shm_close(*t);
}

void* jackbridge_shm_map(char* shm, size_t size)
void* jackbridge_shm_map(void* shm, size_t size)
{
shm_t* t = (shm_t*)shm;
return carla_shm_map(*t, size);


+ 5
- 5
source/modules/native-plugins/midi-base.hpp View File

@@ -52,9 +52,9 @@ class MidiPattern
{
public:
MidiPattern(AbstractMidiPlayer* const player)
: kPlayer(player),
fStartTime(0),
fDuration(0)
: kPlayer(player)
//fStartTime(0),
//fDuration(0)
{
CARLA_ASSERT(kPlayer != nullptr);
}
@@ -200,8 +200,8 @@ public:
private:
AbstractMidiPlayer* const kPlayer;

uint32_t fStartTime; // unused
uint32_t fDuration; // unused
//uint32_t fStartTime; // unused
//uint32_t fDuration; // unused

CarlaMutex fMutex;
LinkedList<const RawMidiEvent*> fData;


+ 1
- 1
source/modules/native-plugins/vex/VexVoice.h View File

@@ -88,7 +88,7 @@ private:
float Fvelocity;
double SampleRate;
float BaseFrequency;
float lfoC, LFOA, LFOP, LFOF;
float lfoC, LFOA, LFOF;
float lfoS[2];
float lowL, bandL, highL, lowR, bandR, highR, q, cut;
};


+ 3
- 3
source/modules/native-plugins/vex/lookandfeel/MyLookAndFeel.cpp View File

@@ -114,7 +114,7 @@ void MyLookAndFeel::drawRotarySlider(Graphics& g,
float sliderPos,
const float rotaryStartAngle,
const float rotaryEndAngle,
Slider& slider) override
Slider& /*slider*/) override
{
const float radius = jmin (width / 2, height / 2) - 2.0f;
const float centreX = x + width * 0.5f;
@@ -123,9 +123,9 @@ void MyLookAndFeel::drawRotarySlider(Graphics& g,
const float ry = centreY - radius;
const float rw = radius * 2.0f;
const float angle = rotaryStartAngle + sliderPos * (rotaryEndAngle - rotaryStartAngle);
//const bool isMouseOver = slider.isMouseOverOrDragging() && slider.isEnabled();
// const float zeroPos = rotaryStartAngle + fabs((float)slider.getMinimum() / ((float)slider.getMaximum() - (float)slider.getMinimum())) * (rotaryEndAngle - rotaryStartAngle);
//const bool isMouseOver = slider.isMouseOverOrDragging() && slider.isEnabled();
//const float zeroPos = rotaryStartAngle + fabs((float)slider.getMinimum() / ((float)slider.getMaximum() - (float)slider.getMinimum())) * (rotaryEndAngle - rotaryStartAngle);
Path p;


Loading…
Cancel
Save