gecko-dev/widget/cocoa/NativeKeyBindings.h
Masayuki Nakano 872f694c63 Bug 1339543 part 4 Change nsIWidget::ExecuteNativeKeyBinding() to nsIWidget::GetEditCommands() which just retrieves edit commands for the type r=smaug
Now, nsIWidget::ExecuteNativeKeyBinding() isn't used by anybody for executing
edit commands.  Instead, they need array of edit commands for the key
combination.  So, the method should be renamed to GetEditCommands() and just
return edit commands as an array.

MozReview-Commit-ID: 4G0B1lJ8Lbe

--HG--
extra : rebase_source : 4a5829281d59677c773950c34d91a1cd8074d243
2017-05-19 17:49:41 +09:00

47 lines
1.3 KiB
Objective-C

/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef mozilla_widget_NativeKeyBindings_h_
#define mozilla_widget_NativeKeyBindings_h_
#import <Cocoa/Cocoa.h>
#include "mozilla/Attributes.h"
#include "mozilla/EventForwards.h"
#include "nsDataHashtable.h"
#include "nsIWidget.h"
namespace mozilla {
namespace widget {
typedef nsDataHashtable<nsPtrHashKey<struct objc_selector>, CommandInt>
SelectorCommandHashtable;
class NativeKeyBindings final
{
typedef nsIWidget::NativeKeyBindingsType NativeKeyBindingsType;
public:
static NativeKeyBindings* GetInstance(NativeKeyBindingsType aType);
static void Shutdown();
void Init(NativeKeyBindingsType aType);
void GetEditCommands(const WidgetKeyboardEvent& aEvent,
nsTArray<CommandInt>& aCommands);
private:
NativeKeyBindings();
SelectorCommandHashtable mSelectorToCommand;
static NativeKeyBindings* sInstanceForSingleLineEditor;
static NativeKeyBindings* sInstanceForMultiLineEditor;
}; // NativeKeyBindings
} // namespace widget
} // namespace mozilla
#endif // mozilla_widget_NativeKeyBindings_h_