Commit 3bb185a3 authored by blizzard%redhat.com's avatar blizzard%redhat.com
Browse files

Checkpointing changes. Not part of the build. Got focus working.

parent 08f5019d
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -121,6 +121,7 @@ moz_container_class_init (MozContainerClass *klass)
void
moz_container_init (MozContainer *container)
{
  GTK_WIDGET_SET_FLAGS(container, GTK_CAN_FOCUS);
  container->container.resize_mode = GTK_RESIZE_IMMEDIATE;
  gtk_widget_set_redraw_on_allocate(GTK_WIDGET(container),
				    FALSE);
+41 −0
Original line number Diff line number Diff line
@@ -135,12 +135,51 @@ nsCommonWidget::InitMouseScrollEvent(nsMouseScrollEvent &aEvent, PRUint32 aMsg)
  aEvent.widget = NS_STATIC_CAST(nsIWidget *, this);
}

void
nsCommonWidget::DispatchGotFocusEvent(void)
{
  nsGUIEvent event;
  InitGUIEvent(event, NS_GOTFOCUS);
  nsEventStatus status;
  DispatchEvent(&event, status);
}

void
nsCommonWidget::DispatchLostFocusEvent(void)
{
  nsGUIEvent event;
  InitGUIEvent(event, NS_LOSTFOCUS);
  nsEventStatus status;
  DispatchEvent(&event, status);
}

void
nsCommonWidget::DispatchActivateEvent(void)
{
  nsGUIEvent event;
  InitGUIEvent(event, NS_ACTIVATE);
  nsEventStatus status;
  DispatchEvent(&event, status);
}

void
nsCommonWidget::DispatchDeactivateEvent(void)
{
  nsGUIEvent event;
  InitGUIEvent(event, NS_DEACTIVATE);
  nsEventStatus status;
  DispatchEvent(&event, status);
}

NS_IMETHODIMP
nsCommonWidget::DispatchEvent(nsGUIEvent *aEvent,
			      nsEventStatus &aStatus)
{
  aStatus = nsEventStatus_eIgnore;

  // hold a widget reference while we dispatch this event
  NS_ADDREF(aEvent->widget);

  // send it to the standard callback
  if (mEventCallback)
    aStatus = (* mEventCallback)(aEvent);
@@ -149,6 +188,8 @@ nsCommonWidget::DispatchEvent(nsGUIEvent *aEvent,
  if ((aStatus != nsEventStatus_eIgnore) && mEventListener)
    aStatus = mEventListener->ProcessEvent(*aEvent);

  NS_RELEASE(aEvent->widget);

  return NS_OK;
}

+6 −0
Original line number Diff line number Diff line
@@ -57,6 +57,12 @@ class nsCommonWidget : public nsBaseWidget {
  void InitButtonEvent(nsMouseEvent &aEvent, PRUint32 aMsg,
		       GdkEventButton *aEvent);
  void InitMouseScrollEvent(nsMouseScrollEvent &aEvent, PRUint32 aMsg);

  void DispatchGotFocusEvent(void);
  void DispatchLostFocusEvent(void);
  void DispatchActivateEvent(void);
  void DispatchDeactivateEvent(void);
  
  NS_IMETHOD DispatchEvent(nsGUIEvent *aEvent,
			   nsEventStatus &aStatus);

+3 −0
Original line number Diff line number Diff line
@@ -35,8 +35,11 @@

#include "nsScrollbar.h"

#include <gtk/gtkscrollbar.h>

nsScrollbar::nsScrollbar()
{
  mScrollbar = nsnull;
}

nsScrollbar::~nsScrollbar()
+6 −1
Original line number Diff line number Diff line
@@ -33,10 +33,15 @@
 *
 * ***** END LICENSE BLOCK ***** */

#include <nsBaseWidget.h>
#include "nsBaseWidget.h"

#include <gtk/gtkwidget.h>

class nsScrollbar : public nsBaseWidget {
 public:
  nsScrollbar();
  virtual ~nsScrollbar();

 private:
  GtkWidget *mScrollbar;
};
Loading