mirror of
https://github.com/gryf/wmaker.git
synced 2026-02-14 12:55:47 +01:00
- Now when Window Maker calls wmsetbg to set the background, it will pass the
correct switch to it, depending on the value of the DisableDithering option. - Replaced some functions with macros in WINGs (wmkpoint(), wmksize() and wmkrange()). They're less expensive to call this way. - Fixed a memleak in the info panel.
This commit is contained in:
@@ -11,13 +11,14 @@ Changes since wmaker 0.64.0:
|
||||
- fixed mem leak that occured when input handling was done with poll
|
||||
- simpler and more straightforward event handling for timer, idle, input
|
||||
and X events (also fixed some problems the old handling logic had)
|
||||
- moved timer, dile and input handler definitions and prototypes from
|
||||
- moved timer, idle and input handler definitions and prototypes from
|
||||
WINGs.h to WUtil.h because they're not GUI related.
|
||||
- better and more robust handling of events (timer, idle, input, X) in
|
||||
WMMaskEvent(). Also fixed a bug where input and timer events were not
|
||||
treated for undefined periods of time under some circumstances.
|
||||
- fixed secure textfields not to allow text selection, to avoid compromising
|
||||
sensitive information by pasting it to a terminal.
|
||||
- replaced wmkrange(), wmkpoint() and wmksize() functions with macros.
|
||||
|
||||
|
||||
changes since wmaker 0.63.1:
|
||||
|
||||
@@ -36,8 +36,12 @@ typedef struct {
|
||||
WMSize size;
|
||||
} WMRect;
|
||||
|
||||
#define wmksize(width, height) (WMSize){(width), (height)}
|
||||
#define wmkpoint(x, y) (WMPoint){(x), (y)}
|
||||
#define wmkrect(pos, size) (WMRect){(pos), (size)}
|
||||
|
||||
|
||||
|
||||
/* WMRange was moved in WUtil.h */
|
||||
|
||||
#define ClientMessageMask (1L<<30)
|
||||
|
||||
@@ -573,15 +577,6 @@ typedef struct W_DragDestinationProcs {
|
||||
|
||||
|
||||
|
||||
/* ...................................................................... */
|
||||
|
||||
|
||||
WMRange wmkrange(int start, int count);
|
||||
|
||||
WMPoint wmkpoint(int x, int y);
|
||||
|
||||
WMSize wmksize(unsigned int width, unsigned int height);
|
||||
|
||||
|
||||
/* ....................................................................... */
|
||||
|
||||
|
||||
@@ -149,12 +149,13 @@ typedef int WMMatchDataProc(void *item, void *cdata);
|
||||
|
||||
|
||||
|
||||
|
||||
typedef struct {
|
||||
int position;
|
||||
int count;
|
||||
} WMRange;
|
||||
|
||||
#define wmkrange(position, count) (WMRange){(position), (count)}
|
||||
|
||||
|
||||
|
||||
/* DO NOT ACCESS THE CONTENTS OF THIS STRUCT */
|
||||
@@ -474,7 +475,6 @@ void WMPutInBag(WMBag *bag, void *item);
|
||||
/* insert will increment the index of elements after it by 1 */
|
||||
void WMInsertInBag(WMBag *bag, int index, void *item);
|
||||
|
||||
/* this is slow */
|
||||
/* erase will remove the element from the bag,
|
||||
* but will keep the index of the other elements unchanged */
|
||||
int WMEraseFromBag(WMBag *bag, int index);
|
||||
|
||||
@@ -55,7 +55,6 @@ static WMBag *idleHandler=NULL;
|
||||
|
||||
static WMBag *inputHandler=NULL;
|
||||
|
||||
// this should go to wevent.c and wutil.c too
|
||||
#define timerPending() (timerHandler)
|
||||
|
||||
|
||||
|
||||
@@ -261,6 +261,7 @@ WMIsHostEqualToHost(WMHost* hPtr, WMHost* aPtr)
|
||||
|
||||
for (i=0; i<WMGetArrayItemCount(aPtr->addresses); i++) {
|
||||
adr1 = WMGetFromArray(aPtr->addresses, i);
|
||||
// use WMFindInArray here --Dan
|
||||
for (j=0; j<WMGetArrayItemCount(hPtr->addresses); j++) {
|
||||
adr2 = WMGetFromArray(hPtr->addresses, j);
|
||||
if (strcmp(adr1, adr2)==0)
|
||||
|
||||
@@ -444,16 +444,6 @@ WMNextEvent(Display *dpy, XEvent *event)
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* Is this comment still valid?
|
||||
* waitForEvent seems now to understand masked events. -Dan
|
||||
*
|
||||
* Cant use this because XPending() will make waitForEvent
|
||||
* return even if the event in the queue is not what we want,
|
||||
* and if we block until some new event arrives from the
|
||||
* server, other events already in the queue (like Expose)
|
||||
* will be deferred.
|
||||
*/
|
||||
void
|
||||
WMMaskEvent(Display *dpy, long mask, XEvent *event)
|
||||
{
|
||||
|
||||
@@ -316,42 +316,5 @@ W_PaintTextAndImage(W_View *view, int wrap, GC textGC, W_Font *font,
|
||||
|
||||
|
||||
|
||||
WMRange
|
||||
wmkrange(int start, int count)
|
||||
{
|
||||
WMRange range;
|
||||
|
||||
range.position = start;
|
||||
range.count = count;
|
||||
|
||||
return range;
|
||||
}
|
||||
|
||||
|
||||
WMPoint
|
||||
wmkpoint(int x, int y)
|
||||
{
|
||||
WMPoint point;
|
||||
|
||||
point.x = x;
|
||||
point.y = y;
|
||||
|
||||
return point;
|
||||
}
|
||||
|
||||
|
||||
WMSize
|
||||
wmksize(unsigned int width, unsigned int height)
|
||||
{
|
||||
WMSize size;
|
||||
|
||||
size.width = width;
|
||||
size.height = height;
|
||||
|
||||
return size;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user